前端axios下载excel文件(二进制)的处理方法


Posted in Javascript onJuly 31, 2018

需求:通过后端接口下载excel文件,后端没有文件地址,返回二进制流文件

实现:axios(ajax类似)

主要代码:

axios:设置返回数据格式为blob或者arraybuffer

如:

var instance = axios.creat({     ... //一些配置
    responseType: 'blob', //返回数据的格式,可选值为arraybuffer,blob,document,json,text,stream,默认值为json
  })

请求时的处理:

getExcel().then(res => {
  //这里res.data是返回的blob对象   
  
var blob = new Blob([res.data], {type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8'}); //application/vnd.openxmlformats-officedocument.spreadsheetml.sheet这里表示xlsx类型
  
var downloadElement = document.createElement('a');
  
var href = window.URL.createObjectURL(blob); //创建下载的链接
  
downloadElement.href = href;
  
downloadElement.download = 'xxx.xlsx'; //下载后文件名
  
document.body.appendChild(downloadElement);
  
downloadElement.click(); //点击下载
  
document.body.removeChild(downloadElement); //下载完成移除元素
  
window.URL.revokeObjectURL(href); //释放掉blob对象 
 })

总结

以上所述是小编给大家介绍的前端axios下载excel文件(二进制)的处理方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript getElementsByClassName 和js取地址栏参数
Jan 02 Javascript
Node.js编码规范
Jul 14 Javascript
借助FileReader实现将文件编码为Base64后通过AJAX上传
Dec 24 Javascript
使用plupload自定义参数实现多文件上传
Jul 19 Javascript
原生js实现无缝轮播图效果
Jan 11 Javascript
vue使用stompjs实现mqtt消息推送通知
Jun 22 Javascript
bootstrap paginator分页插件的两种使用方式实例详解
Nov 14 Javascript
vue axios数据请求及vue中使用axios的方法
Sep 10 Javascript
微信小程序如何自定义table组件
Jun 29 Javascript
JS中的算法与数据结构之二叉查找树(Binary Sort Tree)实例详解
Aug 16 Javascript
ant design pro中可控的筛选和排序实例
Nov 17 Javascript
利用JavaScript为句子加标题的3种方法示例
Jan 05 Javascript
JS构造一个html文本内容成文件流形式发送到后台
Jul 31 #Javascript
vue导出html、word和pdf的实现代码
Jul 31 #Javascript
JavaScript函数节流和函数去抖知识点学习
Jul 31 #Javascript
JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
Jul 31 #Javascript
微信网页授权并获取用户信息的方法
Jul 30 #Javascript
axios简单实现小程序延时loading指示
Jul 30 #Javascript
JS实现HTML页面中动态显示当前时间完整示例
Jul 30 #Javascript
You might like
Symfony模板的快捷变量用法实例
2016/03/17 PHP
PHP中set_include_path()函数相关用法分析
2016/07/18 PHP
PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别分析
2017/07/03 PHP
Mac下关于PHP环境和扩展的安装详解
2019/10/17 PHP
用JavaScript实现使用鼠标画线的示例代码
2014/08/19 Javascript
JS实现网页背景颜色与select框中颜色同时变化的方法
2015/02/27 Javascript
jquery实现通用的内容渐显Tab选项卡效果
2015/09/07 Javascript
浅谈Node异步编程的机制
2017/10/18 Javascript
JS中Promise函数then的奥秘探究
2018/07/30 Javascript
nodejs基础之多进程实例详解
2018/12/27 NodeJs
在vue中使用G2图表的示例代码
2019/03/19 Javascript
jquery+ajax实现上传图片并显示上传进度功能【附php后台接收】
2019/06/06 jQuery
[01:18:43]2014 DOTA2华西杯精英邀请赛5 24 iG VS DK
2014/05/25 DOTA
[43:35]EG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python实现批量转换文件编码(批转换编码示例)
2014/01/23 Python
python通过ffmgep从视频中抽帧的方法
2018/12/05 Python
对Django 转发和重定向的实例详解
2019/08/06 Python
python 直接赋值和copy的区别详解
2019/08/07 Python
python3.8 微信发送服务器监控报警消息代码实现
2019/11/05 Python
Python selenium抓取虎牙短视频代码实例
2020/03/02 Python
django-csrf使用和禁用方式
2020/03/13 Python
在python中实现求输出1-3+5-7+9-......101的和
2020/04/02 Python
Selenium向iframe富文本框输入内容过程图解
2020/04/10 Python
Django+RestFramework API接口及接口文档并返回json数据操作
2020/07/12 Python
详解pycharm自动import所需的库的操作方法
2020/11/30 Python
PyTorch 中的傅里叶卷积实现示例
2020/12/11 Python
html5+css3之动画在webapp中的应用
2014/11/21 HTML / CSS
澳大利亚购买最佳炊具品牌网站:Cookware Brands
2019/02/16 全球购物
EJB需直接实现它的业务接口或Home接口吗,请简述理由
2016/11/23 面试题
服装厂厂长岗位职责
2013/12/27 职场文书
学雷锋演讲稿汇总
2014/05/10 职场文书
党支部创先争优承诺书
2014/08/30 职场文书
投标单位介绍信
2015/05/05 职场文书
董事长新年致辞
2015/07/29 职场文书
写作技巧:怎样写好一份优秀工作总结?
2019/08/14 职场文书
关于html选择框创建占位符的问题
2021/06/09 HTML / CSS