后台返回的乱码流
解决办法:
请求方式用的是axios,主要加关键的 {responseType: 'blob'}
axios封装
export function postDownload(url, data) {
return new Promise((resolve, reject) => {
instance.post(url,data,{responseType: 'blob'}).then(response => {
resolve(response);
}, err => {
reject(err)
})
})
}
下载插件 npm install js-file-download -S
运用:
下载excel时,后台设置了excel标题,要去请求头去取,传输过程中文会有乱码的情况,需要编码下。
let fileDownload = require("js-file-download");
fileDownload(res.data,decodeURIComponent(res.headers['content-disposition'].split("=")[1]));
补充知识:vue下载后台接口返回的二进制流文件转为Excel文件
我就废话不多说了,大家还是直接看代码吧~
this.$http({ <