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 相关文章推荐
学习YUI.Ext 第三天
Mar 10 Javascript
js获取电脑分辨率的思路及操作
Nov 22 Javascript
AngularJS学习笔记之TodoMVC的分析
Feb 22 Javascript
jQuery实现图片预加载效果
Nov 27 Javascript
快速实现JS图片懒加载(可视区域加载)示例代码
Jan 04 Javascript
Vuex简单入门
Apr 19 Javascript
使用Vue中 v-for循环列表控制按钮隐藏显示功能
Apr 23 Javascript
Vue export import 导入导出的多种方式与区别介绍
Feb 12 Javascript
vue实现放大镜效果
Sep 17 Javascript
微信小程序实现签到弹窗动画
Sep 21 Javascript
Vue router传递参数并解决刷新页面参数丢失问题
Dec 02 Vue.js
JavaScript中的宏任务和微任务详情
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面向对象三大特点学习(充分理解抽象、封装、继承、多态)
2012/05/07 PHP
php通过隐藏表单控件获取到前两个页面的url
2014/09/09 PHP
Yii框架关联查询with用法分析
2014/12/02 PHP
TP5框架简单登录功能实现方法示例
2019/10/31 PHP
php libevent 功能与使用方法详解
2020/03/04 PHP
基于jQuery的倒计时实现代码
2012/05/30 Javascript
jquery对单选框,多选框,文本框等常见操作小结
2014/01/08 Javascript
node.js中的fs.fstat方法使用说明
2014/12/15 Javascript
基于BootStrap实现局部刷新分页实例代码
2016/08/08 Javascript
JavaScript中removeChild 方法开发示例代码
2016/08/15 Javascript
Jquery实现跨域异步上传文件总结
2017/02/03 Javascript
vue-router 路由基础的详解
2017/10/17 Javascript
angular使用md5,CryptoJS des加密的方法
2019/06/03 Javascript
js实现移动端tab切换时下划线滑动效果
2019/09/08 Javascript
JavaScript数值类型知识汇总
2019/11/17 Javascript
Vue.js原理分析之nextTick实现详解
2020/09/07 Javascript
javascript实现搜索筛选功能实例代码
2020/11/12 Javascript
Python学习之Anaconda的使用与配置方法
2018/01/04 Python
Python常见MongoDB数据库操作实例总结
2018/07/24 Python
python提取包含关键字的整行数据方法
2018/12/11 Python
python中update的基本使用方法详解
2019/07/17 Python
HTML5 form标签之解放表单验证、增加文件上传、集成拖放的使用方法
2013/04/24 HTML / CSS
生物有机护肤品:Aurelia Probiotic Skincare
2018/01/31 全球购物
夏尔巴人登珠峰品牌:Sherpa Adventure Gear
2018/02/08 全球购物
介绍一下XMLHttpRequest对象的常用方法和属性
2013/05/24 面试题
《雪地里的小画家》教学反思
2014/02/22 职场文书
《谁的本领大》教后反思
2014/04/25 职场文书
社区活动策划方案
2014/08/21 职场文书
安全施工责任书
2014/08/25 职场文书
擅自离岗检讨书
2014/09/12 职场文书
2014年党员学习“三严三实”思想汇报
2014/09/15 职场文书
处级干部考察材料
2014/12/24 职场文书
门店店长岗位职责
2015/04/14 职场文书
python必学知识之文件操作(建议收藏)
2021/05/30 Python
SQL实现LeetCode(178.分数排行)
2021/08/04 MySQL
Python turtle编写简单的球类小游戏
2022/03/31 Python