我有一个这样的模板:
<img class="picto"
ng-repeat="module in modules"
ng-src="{{module.Source}}"
title="{{module.Title}}"
ng-click="module.handler();"/>
当我使用静态代码设置$scope.modules
数组时,一切正常,并且使用媒体类型“image / gif”(对于gif文件)通过GET获取图像。但是,当我使用$http.get()
检索相同的数组时 - 请参阅下面的代码 - ,angular尝试使用媒体类型“text / html”检索图像,这会导致404错误:
$http.get('/api/modules', {})
.success(function (data) {
$http.defaults.get = { 'Content-Type': 'image/gif' }; // apparently useless
$scope.modules = data;
for (var module in $scope.modules) {
$scope.modules[module].handler = function () { alert(this.Id); };
}
delete $http.defaults.get; // ...useless
});
尝试添加标头默认值也无济于事(// apparently useless
)。你能看出什么是错的吗?
答案 0 :(得分:0)
使用Accept: 'image/gif'
代替Content-Type: 'image/gif'
尝试。
Content-Type
标头描述了您要发送到服务器的数据格式。 Accept
标题描述了您从服务器接收的数据格式。