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 相关文章推荐
Extjs学习笔记之三 extjs form更多的表单项
Jan 07 Javascript
JQuery for与each性能比较分析
May 14 Javascript
jQuery的css()方法用法实例
Dec 24 Javascript
使用Raygun来自动追踪AngularJS中的异常
Jun 23 Javascript
特殊日期提示功能的实现方法
Jun 16 Javascript
vue.js vue-router如何实现无效路由(404)的友好提示
Dec 20 Javascript
vue中使用iview自定义验证关键词输入框问题及解决方法
Mar 26 Javascript
Vue 路由 过渡动效 数据获取方法
Jul 31 Javascript
Vue实现美团app的影院推荐选座功能【推荐】
Aug 29 Javascript
vue返回上一页面时回到原先滚动的位置的方法
Dec 20 Javascript
一次让你了解全部JavaScript的作用域
Jun 24 Javascript
JavaScript中ES6规范中let和const的用法和区别
Aug 06 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
isset和empty的区别
2007/01/15 PHP
php strrpos()与strripos()函数
2013/08/31 PHP
Yii框架调试心得--在页面输出执行sql语句
2014/12/25 PHP
php读取出一个文件夹及其子文件夹下所有文件的方法示例
2017/06/15 PHP
Thinkphp 框架扩展之类库扩展操作详解
2020/04/23 PHP
javascript 文档的编码问题解决
2009/03/01 Javascript
javascript globalStorage类代码
2009/06/04 Javascript
优化innerHTML操作(提高代码执行效率)
2011/08/20 Javascript
JS获取键盘上任意按键的值(实例代码)
2013/11/12 Javascript
node.js中的fs.existsSync方法使用说明
2014/12/17 Javascript
node.js集成百度UE编辑器
2015/02/05 Javascript
实例讲解JavaScript的Backbone.js框架中的View视图
2016/05/05 Javascript
jQuery动态添加可拖动元素完整实例(附demo源码下载)
2016/06/21 Javascript
jQuery获取attr()与prop()属性值的方法及区别介绍
2016/07/06 Javascript
jquery easyUI中ajax异步校验用户名
2016/08/19 Javascript
JavaScript获取URL参数的方法之一
2017/03/24 Javascript
详解基于node的前端项目编译时内存溢出问题
2017/08/01 Javascript
JS判断微信扫码的方法
2017/08/07 Javascript
JavaScript 实现同时选取多个时间段的方法
2019/10/17 Javascript
jquery获取input输入框中的值
2019/11/13 jQuery
iSlider手机端图片滑动切换插件使用详解
2019/12/24 Javascript
Python学习之asyncore模块用法实例教程
2014/09/29 Python
Python socket网络编程TCP/IP服务器与客户端通信
2017/01/05 Python
Python3实现购物车功能
2018/04/18 Python
Django中如何使用sass的方法步骤
2019/07/09 Python
浅谈keras通过model.fit_generator训练模型(节省内存)
2020/06/17 Python
基于 HTML5 WebGL 实现的医疗物流系统
2019/10/08 HTML / CSS
Gina Bacconi官网:吉娜贝康尼连衣裙和礼服
2018/04/24 全球购物
BSTN意大利:德国街头和运动文化高品质商店
2020/12/22 全球购物
工程业务员工作职责
2013/12/07 职场文书
社区八一活动方案
2014/02/03 职场文书
查摆问题整改措施范文
2014/10/11 职场文书
门市房租房协议书
2014/12/04 职场文书
2015年国培研修感言
2015/08/01 职场文书
java固定大小队列的几种实现方式详解
2021/07/15 Java/Android
Python编写车票订购系统 Python实现快递收费系统
2022/08/14 Python