下载文件(Excel)功能,后端返回blob字节流,前端怎么处理?

在做大屏数据项目有个报表下载的功能,根据用户选择的时间下载对应时间的报表,后端返回的是文件流,前端需要怎么去处理呢?

实现的功能效果:

 

后端返回的数据:

需要我们处理的乱码:

前端代码:

复制代码
 1 exportExcel(){ 
 2    axios({
 3       methods:"xxxx",
 4       url:"xxx/xxxx/xxxx",  
 5       responseType:'blob',//在发送请求的时候,设置返回信息为二进制文件,默认为json
 6       data:xxxx
 7    }).then(res => {
 8         let blob = new Blob([res],{type:'application/xlsx'});
 9         let url = window.URL.createObjectURL(blob);
10         const link = document.createElement("a");//创建a标签
11         link.href = url;
12         link.download = '报表.xlsx';//文件的文件名
13         link.click();
14         URL.revokeObjectURL(url);
15    });
16 }
复制代码
posted @   NUNA11  阅读(696)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Blazor Hybrid适配到HarmonyOS系统
· 支付宝 IoT 设备入门宝典(下)设备经营篇
· 万字调研——AI生成内容检测
· 解决跨域问题的这6种方案,真香!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库
点击右上角即可分享
微信分享提示