我要打電話的API,並得到響應的方法。一個API返回一個圖像。 Content-Type:application/octet-stream 如果我設置responseType:「blob」,它工作正常。Angularjs顯示圖像斑點
$http({
url: apiConstants.BASE_URL + 'login',
method: "POST",
responseType: "blob",
data: {
"Req": req
},
headers: {
'X-Username': aUser,
'X-Password': aPass,
},
}).success(function(data, status, headers, config) {
var URL = $window.URL || $window.webkitURL;
$rootScope.ImageSrc = URL.createObjectURL(data);
}
但我想刪除的responseType:從請求「斑點」,並試圖以如下方式
$http({
url: apiConstants.BASE_URL + 'login',
method: "POST",
data: {
"Req": req
},
headers: {
'X-Username': aUser,
'X-Password': aPass,
},
}).success(function(data, status, headers, config) {
var blob = new Blob(
[data],
{
type: 'application/octet-stream'
}
);
var URL = $window.URL || $window.webkitURL;
$rootScope.ImageSrc = URL.createObjectURL(blob);
}
創建BLOB但圖像沒有在html顯示。這是HTML代碼
<img class="img-responsive empImg" id="empImage" data-ng-src="{{ImageSrc}}" />
能否請你告訴我這個
是否'$ rootScope.ImageSrc'有一個像'數據的標題簽名:圖像/ PNG; base64'? – IzumiSy
我可以問爲什麼?我認爲前者(和工作)方法看起來更正確 – Phil
@IzumiSy我建議你看看彌補'URL.createObjectURL' – Phil