场景:axios请求后台,返回二进制流,下载excel文件

 代码

// 返回二进制流部分
let _res = res; // res就是返回的二进制流
let blob = new Blob([_res], { type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" });
let downloadElement = document.createElement("a");
let href = window.URL.createObjectURL(blob); //创建下载的链接
downloadElement.href = href;
downloadElement.download = 'Data output'; //下载后文件名
document.body.appendChild(downloadElement);
downloadElement.click(); //点击下载
document.body.removeChild(downloadElement); //下载完成移除元素
window.URL.revokeObjectURL(href); //释放掉blob对象
// 请求部分
在headers 里面加上responseType:'blob'

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐