vue+axios实现post文件下载


Posted in Javascript onSeptember 25, 2019

本文实例为大家分享了vue+axios实现post文件下载的具体代码,供大家参考,具体内容如下

功能:点击导出按钮,提交请求,下载excel文件;

这里是axios的post方法。get方法请点击这里=》here 

第一步:跟后端童鞋确认交付的接口的response header设置了

vue+axios实现post文件下载

以及返回了文件流。

第二步:修改axios请求的responseType为blob,以post请求为例:

axios({
 method: 'post',
 url: 'api/user/',
 data: {
 firstName: 'Fred',
 lastName: 'Flintstone'
 },
 responseType: 'blob'
}).then(response => {
 this.download(response)
}).catch((error) => {

})

第三步:请求成功,拿到response后,调用download函数(创建a标签,设置download属性,插入到文档中并click)

methods: {
 // 下载文件
 download (data) {
 if (!data) {
  return
 }
 let url = window.URL.createObjectURL(new Blob([data]))
 let link = document.createElement('a')
 link.style.display = 'none'
 link.href = url
 link.setAttribute('download', 'excel.xlsx')
 
 document.body.appendChild(link)
 link.click()
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
处理及遍历XML文档DOM元素属性及方法整理
Aug 23 Javascript
jQuery代码实现对话框右上角菜单带关闭×
May 03 Javascript
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
Dec 14 Javascript
详解jQuery选择器
Dec 21 Javascript
Angular的模块化(代码分享)
Dec 26 Javascript
原生js实现日期计算器功能
Feb 17 Javascript
VUE前端cookie简单操作
Oct 17 Javascript
jQuery实现弹窗下底部页面禁止滑动效果
Dec 19 jQuery
JS实现调用本地摄像头功能示例
May 18 Javascript
jQuery中实现text()的方法
Apr 04 jQuery
微信小程序实现点击图片放大预览
Oct 21 Javascript
Vue 一键清空表单的实现方法
Feb 07 Javascript
vue + axios get下载文件功能
Sep 25 #Javascript
layer.open组件获取弹出层页面变量、函数的实例
Sep 25 #Javascript
jquery中attr、prop、data区别与用法分析
Sep 25 #jQuery
axios实现文件上传并获取进度
Mar 25 #Javascript
Layer+Echarts构建弹出层折线图的方法
Sep 25 #Javascript
axios实现简单文件上传功能
Sep 25 #Javascript
layer弹出层取消遮罩的方法
Sep 25 #Javascript
You might like
优化php效率,提高php性能的一些方法
2011/03/24 PHP
php遍历数组的4种方法总结
2014/07/05 PHP
php数组去除空值函数分享
2015/02/02 PHP
PHP格式化显示时间date()函数代码
2018/10/03 PHP
测试JavaScript字符串处理性能的代码
2009/12/07 Javascript
常见效果实现之返回顶部(结合淡入、淡出、减速滚动)
2012/01/04 Javascript
javascript学习笔记(七) js函数介绍
2012/06/19 Javascript
用按钮控制iframe显示的网页实现方法
2013/02/04 Javascript
js修改input的type属性问题探讨
2013/10/12 Javascript
js实现碰撞检测特效代码分享
2016/10/16 Javascript
微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换
2016/11/25 Javascript
AngularJS+bootstrap实现动态选择商品功能示例
2017/05/17 Javascript
vue 请求后台数据的实例代码
2017/06/22 Javascript
详解Vue 中 extend 、component 、mixins 、extends 的区别
2017/12/20 Javascript
使用Node搭建reactSSR服务端渲染架构
2018/08/30 Javascript
Element Table的row-class-name无效与动态高亮显示选中行背景色
2018/11/30 Javascript
vue element 关闭当前tab 跳转到上一路由操作
2020/07/22 Javascript
VUE : vue-cli中去掉路由中的井号#操作
2020/09/04 Javascript
Vue全局使用less样式,组件使用全局样式文件中定义的变量操作
2020/10/21 Javascript
详解 javascript对象创建模式
2020/10/30 Javascript
k8s node节点重新加入master集群的实现
2021/02/22 Javascript
[57:47]Fnatic vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
跟老齐学Python之用Python计算
2014/09/12 Python
浅谈python和C语言混编的几种方式(推荐)
2017/09/27 Python
为什么选择python编程语言入门黑客攻防 给你几个理由!
2018/02/02 Python
python 多线程串行和并行的实例
2019/02/22 Python
详解Python 爬取13个旅游城市,告诉你五一大家最爱去哪玩?
2019/05/07 Python
Python networkx包的实现
2020/02/14 Python
英国在线照明超市:Castlegate Lights
2019/10/30 全球购物
在C#中如何实现多态
2014/07/02 面试题
应用化学专业职业生涯规划书
2014/01/22 职场文书
2015年元旦文艺汇演主持词
2014/03/26 职场文书
银行授权委托书格式
2014/10/10 职场文书
本地通过nginx配置反向代理的全过程记录
2021/03/31 Servers
教你做个可爱的css滑动导航条
2021/06/15 HTML / CSS
MySQL查询日期时间
2022/05/15 MySQL