vue|vue 后台接口返回文件流地址的下载
文章图片
第一次获取这样的数据,无从下手啊,百度吧
其实很简单,首先在axios.post的请求中把默认的 " responseType:‘json’ " 改为" responseType:‘blob’ ";
这块要敲黑板了,我栽在这里了,一直没有修改,所以下载下来的文件打开后一直提示,如图
文章图片
设置成blob后打开无压力!
然后按正常的请求接口的方式获取到了这个文件流,可能是response.data,也可能直接就是response,这个看你们后端人员如何返回了, 获取到的文件流我们用blob转一下,
let blob = new Blob([res], {type: "application/vnd.ms-excel"});
// res就是接口返回的文件流了
let objectUrl = URL.createObjectURL(blob);
window.location.href = https://www.it610.com/article/objectUrl;
这样不需要再有其他操作了,直接就可以导出文件了.
【vue|vue 后台接口返回文件流地址的下载】忘了,得注意blob里的这个type,要根据你们的需要更换文件类型啊,可以参考一下这个 https://www.cnblogs.com/yjmBlogs/p/9493726.html , 我需要导出的是列表数据,所以选的是’application/vnd.ms-excel’,就会导出.xls的文件来,你们根据需求换啊
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- vue-cli|vue-cli 3.x vue.config.js 配置
- 基于微信小程序带后端ssm接口小区物业管理平台设计
- 2020-04-07vue中Axios的封装和API接口的管理
- 调取接口时报404错误(ID:16)
- CICC(脑机接口,科幻几近成真())
- VueX--VUE核心插件
- echart|echart 双轴图开发
- vue组件中为何data必须是一个函数()
- 接口|axios接口报错-参数类型错误解决