2021年12月05日
参与项目 | 爬虫获取外部资源 |
---|---|
协助解决人 | |
整体耗时 | 1天 |
工作重点
response type为blod时,怎么拿到返回的json错误信息
解决思路
这是未转换格式的返回值:
需要拿到的数据:{data{code:500;message:'文件下载失败'}}
解决方案:对返回结果进行格式转换
解决方案及相关代码展示
在请求的then中调用该函数,即可拿到正常的json字符数据
// 错误时返回的json转换
handlerResponseError(data) {
const _this = this;
const fileReader = new FileReader();
fileReader.onload = function() {
try {
console.log("fileReader.result", fileReader.result);
const jsonData = JSON.parse(fileReader.result); // 说明是普通对象数据,后台转换失败
console.log("后台返回的信息", jsonData);
// console.log("后台返回的信息", jsonData.msg);
// console.log("后台返回的code", jsonData.code);
if (jsonData.code != 200) {
console.log("ffff");
_this.$notify.error({
title: "提示",
message: `${jsonData.msg}`,
});
}
// return jsonData;
// dosomething……
} catch (err) {
// 解析成对象失败,说明是正常的文件流
console.log("success...");
}
};
fileReader.readAsText(data);
},
个人总结
- 需要了解blod如何进行转换格式