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 相关文章推荐
javascript判断用户浏览器插件安装情况的代码
Jan 01 Javascript
js实现滚动条滚动到页面底部继续加载
Dec 19 Javascript
JS区分浏览器页面是刷新还是关闭
Apr 17 Javascript
javascript时间戳和日期字符串相互转换代码(超简单)
Jun 22 Javascript
javascript中获取元素标签中间的内容的实现方法
Oct 08 Javascript
jQuery中get方法用法分析
Dec 07 Javascript
javascript实现简单的可随机变色网页计算器示例
Dec 30 Javascript
JavaScript基础心法 深浅拷贝(浅拷贝和深拷贝)
Mar 05 Javascript
JavaScript数组去重算法实例小结
May 07 Javascript
jQuery鼠标滑过横向时间轴样式(代码详解)
Nov 01 jQuery
js 使用ajax设置和获取自定义header信息的方法小结
Mar 12 Javascript
vue-cli 3如何使用vue-bootstrap-datetimepicker日期插件
Feb 20 Vue.js
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
各种战术和打法的原创者
2020/03/04 星际争霸
漫荒推荐:画风超赞的国风漫画推荐 超长假期不无聊
2020/03/08 国漫
php+Mysqli利用事务处理转账问题实例
2015/02/11 PHP
php实现将数组转换为XML的方法
2015/03/09 PHP
php简单实现多字节字符串翻转的方法
2015/03/31 PHP
PHP中Trait及其应用详解
2017/02/14 PHP
PHP实现随机发放扑克牌
2020/04/21 PHP
javascript[js]获取url参数的代码
2007/10/17 Javascript
jQuery 隔行换色 支持键盘上下键,按Enter选定值
2009/08/02 Javascript
js 编写规范
2010/03/03 Javascript
ExtJS下书写动态生成的xml(兼容火狐)
2013/04/02 Javascript
7款吸引人眼球的jQuery/CSS3特效实例分享
2013/04/25 Javascript
IE8下jQuery改变png图片透明度时出现的黑边
2015/08/30 Javascript
jQuery插件passwordStrength密码强度指标详解
2016/06/24 Javascript
JavaScript面向对象编写购物车功能
2016/08/19 Javascript
基于MVC+EasyUI的web开发框架之使用云打印控件C-Lodop打印页面或套打报关运单信息
2016/08/29 Javascript
JS实现密码框的显示密码和隐藏密码功能示例
2016/12/26 Javascript
Javascript中的getter和setter初识
2017/08/17 Javascript
vue  directive定义全局和局部指令及指令简写
2018/11/20 Javascript
VUE实现自身整体组件销毁的示例代码
2020/01/13 Javascript
[42:20]2014 DOTA2华西杯精英邀请赛5 24 DK VS NewBee
2014/05/25 DOTA
Python使用defaultdict读取文件各列的方法
2017/05/11 Python
Python基于回溯法子集树模板解决野人与传教士问题示例
2017/09/11 Python
Python3实现发送QQ邮件功能(html)
2017/12/15 Python
python实现给微信指定好友定时发送消息
2019/04/29 Python
电气自动化自荐信
2013/10/10 职场文书
婚前财产公证书
2014/04/10 职场文书
银行职员自我鉴定
2014/04/20 职场文书
工作鉴定评语
2014/05/04 职场文书
客户经理竞聘演讲稿
2014/05/15 职场文书
食品安全标语
2014/06/07 职场文书
高中学生自我评价范文
2014/09/23 职场文书
2015年七七事变78周年纪念活动方案
2015/05/06 职场文书
幼儿园毕业典礼园长致辞
2015/07/29 职场文书
Redis源码阅读:Redis字符串SDS详解
2021/07/15 Redis
Windows7下FTP搭建图文教程
2022/08/05 Servers