项目中导出文件是返回的arraybuffer格式,返回错误信息是也是arraybuffer格式,导出后为txt文件,无法判断错错误信息. 网上搜索后通过将arraybuffer转换来判断代码如下
async download() {
let res = await axios.post(url,params,{responseType: "arrayBuffer"})
if(!res) return
try{
//
let enc = new TextDecoder('utf-8')
let data = JSON.parse(enc.decode(new Uint8Array(res)))
//在这里如果能获取到data,就表示遇到错误了,
}catch(err){
//new TextDecoder('utf-8') 这个方法无法解析文件的arraybuffer
//这里表示正确返回arraybuffer文件,然后对文件处理下载即可
}