//调用接口成功后的处理
const data = new FileReader()
const data = data.readAsText(response,'utf-8')
if(response.type=='application/octet-stream'){
const link = document.createElement('a')
let blob = new Blob([response], {type: 'application/octer-stream;charset=utf-8'});
link.style.display = 'none'
link.href = URL.createObjectURL(blob);
link.setAttribute('download', '课程模板.xlsx');
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}else{ //为application/json就说明返回的是提示语了,不是文件流了
data.onload = () => { // 文件读取完成触发
let dataResult = data.result // result为读取后的结果
const parseObj = JSON.parse(dataResult) // 将读取后的string文本转为json数据
that.$message.error(parseObj.msg) // 拿到后端错误提示信息并做弹框提示
}
}
vue的 blob文件下载文件时,后端自定义异常,并返回json错误提示信息,前端捕获信息并展示给用户
最新推荐文章于 2024-08-21 14:09:37 发布