响应类型 blob 但得到 xml 数据
response type blob but getting xml data
我有一个 angularjs 函数可以调用 API。 API 返回图像一次 time.it 正在返回另一次 xml。如果我将响应类型 blob 设置为 follow
,我可以显示返回的图像
$http({
url: apiConstants.BASE_URL + 'login',
method: "POST",
responseType: "blob",
data: {
"Req": req
},
headers: {
'X-Username': aUser,
'X-Password': aPass,
"Content-Type": "application/xml"
},
dataType: "xml"
}).success(function(data, status) {
console.log(data);
}
console.log 正在打印 blob 对象。但是当 API returns xml 内容时,它也作为 blob 对象返回。我试图获取 blob 的 xml 内容,但找不到方法:(。有人可以建议我一种从 blob 对象 xml 获取数据的方法
终于找到答案了。我们可以使用 FileReader 提取 blob 对象。
我所做的是,
$http({
url: apiConstants.BASE_URL + 'login',
method: "POST",
responseType: "blob",
data: {
"Req": req
},
headers: {
'X-Username': aUser,
'X-Password': aPass,
"Content-Type": "application/xml"
},
dataType: "xml"
}).success(function(data, status) {
var reader = new FileReader();
reader.addEventListener("loadend", function() {
console.log(reader.result);
}
reader.readAsText(data);
}
我有一个 angularjs 函数可以调用 API。 API 返回图像一次 time.it 正在返回另一次 xml。如果我将响应类型 blob 设置为 follow
,我可以显示返回的图像$http({
url: apiConstants.BASE_URL + 'login',
method: "POST",
responseType: "blob",
data: {
"Req": req
},
headers: {
'X-Username': aUser,
'X-Password': aPass,
"Content-Type": "application/xml"
},
dataType: "xml"
}).success(function(data, status) {
console.log(data);
}
console.log 正在打印 blob 对象。但是当 API returns xml 内容时,它也作为 blob 对象返回。我试图获取 blob 的 xml 内容,但找不到方法:(。有人可以建议我一种从 blob 对象 xml 获取数据的方法
终于找到答案了。我们可以使用 FileReader 提取 blob 对象。
我所做的是,
$http({
url: apiConstants.BASE_URL + 'login',
method: "POST",
responseType: "blob",
data: {
"Req": req
},
headers: {
'X-Username': aUser,
'X-Password': aPass,
"Content-Type": "application/xml"
},
dataType: "xml"
}).success(function(data, status) {
var reader = new FileReader();
reader.addEventListener("loadend", function() {
console.log(reader.result);
}
reader.readAsText(data);
}