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 30 Javascript
浅析jquery的作用与优势
Dec 02 Javascript
jQuery Masonry瀑布流插件使用详解
Nov 17 Javascript
js获取内联样式的方法
Jan 27 Javascript
jquery实现表格本地排序的方法
Mar 11 Javascript
深入分析jQuery的ready函数是如何工作的(工作原理)
Dec 17 Javascript
AngularJS中的JSONP实例解析
Dec 01 Javascript
纯JS实现表单验证实例
Dec 24 Javascript
jQuery设计思想
Mar 07 Javascript
使用Node.js实现ORM的一种思路详解(图文)
Oct 24 Javascript
分享一个vue项目“脚手架”项目的实现步骤
May 26 Javascript
JS实现简单省市二级联动
Nov 27 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中$_REQUEST、$_POST、$_GET的区别和联系小结
2011/11/23 PHP
php使用递归函数实现数字累加的方法
2015/03/16 PHP
Laravel 批量更新多条数据的示例
2017/11/27 PHP
Ext.FormPanel 提交和 Ext.Ajax.request 异步提交函数的区别
2009/11/12 Javascript
jquery获取input的value问题说明
2010/08/19 Javascript
jQuery阻止冒泡和HTML默认操作
2010/11/17 Javascript
JavaScript 函数惰性载入的实现及其优点介绍
2013/08/12 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
抛弃Nginx使用nodejs做反向代理服务器
2014/07/17 NodeJs
JQuery中$(document)是什么意思有什么作用
2014/07/21 Javascript
Node.js的特点和应用场景介绍
2014/11/04 Javascript
jquery实现顶部向右伸缩的导航区域代码
2015/09/02 Javascript
WordPress中利用AJAX技术进行评论提交的实现示例
2016/01/12 Javascript
js中遍历对象的属性和值的方法
2016/07/27 Javascript
xmlplus组件设计系列之网格(DataGrid)(10)
2017/05/05 Javascript
vue.js获取数据库数据实例代码
2017/05/26 Javascript
JavaScript之DOM_动力节点Java学院整理
2017/07/03 Javascript
easyui简介_动力节点Java学院整理
2017/07/14 Javascript
详谈JS中数组的迭代方法和归并方法
2017/08/11 Javascript
微信小程序自定义模态对话框实例详解
2017/08/16 Javascript
Vue通过ref父子组件拿值方法
2018/09/12 Javascript
[02:25]DOTA2英雄基础教程 生死判决瘟疫法师
2013/12/06 DOTA
[02:17]DOTA2亚洲邀请赛 RAVE战队出场宣传片
2015/02/07 DOTA
Python中变量交换的例子
2014/08/25 Python
详解Python中的相对导入和绝对导入
2017/01/06 Python
django之session与分页(实例讲解)
2017/11/13 Python
Pytorch上下采样函数--interpolate用法
2020/07/07 Python
python生成xml时规定dtd实例方法
2020/09/21 Python
美国婴儿用品及配件购买网站:Munchkin
2019/04/03 全球购物
Clarks鞋澳大利亚官方网站:Clarks Australia
2019/12/25 全球购物
Levi’s西班牙官方网站:李维斯,著名的牛仔裤品牌
2020/08/20 全球购物
幼儿如何来做好自我评价
2013/11/05 职场文书
销售总监岗位职责
2014/01/04 职场文书
2014年社区妇联工作总结
2014/12/02 职场文书
开国大典观后感
2015/06/04 职场文书
雷锋电影观后感
2015/06/10 职场文书