Javascript 如何使用AngularJS显示图像数据?(奇怪的回应格式)
图像存储在php服务器上的一个目录中 服务:Javascript 如何使用AngularJS显示图像数据?(奇怪的回应格式),javascript,angularjs,html,Javascript,Angularjs,Html,图像存储在php服务器上的一个目录中 服务: .factory('PhotoService', function($q, $http) { return { getPhoto: function(photoName) { var url = dirInfo.template_directory + 'quoteCalc/images/Upload/' + photoName; return $http.get(url).then(function(resp
.factory('PhotoService', function($q, $http) {
return {
getPhoto: function(photoName) {
var url = dirInfo.template_directory + 'quoteCalc/images/Upload/' + photoName;
return $http.get(url).then(function(response) {
return response.data;
})
.catch(function(error) {
return "Photo not found: " + error;
});
}
}
})
我使用这个函数调用控制器中的工厂。数据返回正常,但格式已关闭,图像不显示
function init() {
let photo;
PhotoService.getPhoto(imageName).then(function(result) {
$scope.imgstr = result;
});
};
init();
image/response.data的格式很奇怪。我不知道该怎么办。我试过:
var blob = new Blob([response.data], {type: 'application/octet- binary'});
return URL.createObjectURL(blob);
及
也
6HH9.2.12016:02:09:00:51
��R��Z��'��0221�B�v�� ���� ��
��� �
����|F���234��234�0100���� ��������2.�3.
�4&2016:02:09 09:00:512016:02:09 09:00:51���
�JM@bSIs��苹果。�H� � �
. BPLIST000OVZ�2.�����.��似曾相识����������九�E����9
��o�Z�F����L���1.����|��yg�G�wz����o�Xem'@D1\vW�s�W�8.��~总公司�wboI�总磷\�9��新台币�>G$O��R我�3.�D��-�+20
�ux7�Q%+3j�&迪。�7Jc�����E��rwf���?��������ų�-�����|1.��我�sԓֿ��$�E�VzrK���J���}�-�T�����W��&�G�接收������O����,���8.�=^}�:我�\�.�=,7.����F9Páǵ6�
��'�^��Z�sڸ$�美元;Uq� 上面的响应格式不是base64代码,所以现在可以将其呈现为图像。即使您尝试将响应内容编码为base64内容,它仍然无法工作。请检查服务器端存储的内容和返回的内容。@Phil的评论表明我已经把情况复杂化了。我在angular控制器中创建了url,并在ng src中使用了它。我完全删除了该服务,效果非常好 您是否直接将url设置为img进行了测试?图像始终设置为$scope.imgstr。并显示该连接是正常的,但它无法读取图像的格式。为什么要通过$http获取图像?难道你不能简单地做一些事情吗?你在DB中保存了什么?可能的重复
var reader = new FileReader();
return reader.readAsDataURL(response.data);
<img ng-src="data:image/png;base64,{{imgstr}}" />
�����ExifMM*� ���(1�2��ï%HAppleiPhone