前端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 相关文章推荐
2010年最佳jQuery插件整理
Dec 06 Javascript
分享14个很酷的jQuery导航菜单插件
Apr 25 Javascript
基于jquery的图片幻灯展示源码
Jul 15 Javascript
javascript利用控件对windows的操作实现原理与应用
Dec 23 Javascript
javascript面向对象特性代码实例
Jun 12 Javascript
JavaScript判断手机号运营商是移动、联通、电信还是其他(代码简单)
Sep 25 Javascript
JavaScript实现通过select标签跳转网页的方法
Sep 29 Javascript
ES6新数据结构Set与WeakSet用法分析
Mar 31 Javascript
jQuery EasyUI tree增加搜索功能的实现方法
Apr 27 jQuery
jQuery 实现鼠标画框并对框内数据选中的实例代码
Aug 29 jQuery
一步一步的了解webpack4的splitChunk插件(小结)
Sep 17 Javascript
Vue项目报错:Uncaught SyntaxError: Unexpected token
Nov 10 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
关于时间计算的结总
2006/12/06 PHP
php 无极分类(递归)实现代码
2010/01/05 PHP
php环境下利用session防止页面重复刷新的具体实现
2014/01/09 PHP
PHP实现AES256加密算法实例
2014/09/22 PHP
PHP面向对象之工作单元(实例讲解)
2017/06/26 PHP
php使用curl_init()和curl_multi_init()多线程的速度比较详解
2018/08/15 PHP
关于恒等于(===)和非恒等于(!==)
2007/08/20 Javascript
JavaScript基础知识之数据类型
2012/08/06 Javascript
jquery的ajax请求全面了解
2013/03/20 Javascript
jquery 页面滚动到底部自动加载插件集合
2014/01/31 Javascript
javascript使用switch case实现动态改变超级链接文字及地址
2014/12/16 Javascript
Yii2使用Bootbox插件实现自定义弹窗
2015/04/02 Javascript
谈谈对JavaScript原生拖放的深入理解
2016/09/20 Javascript
vuejs 单文件组件.vue 文件的使用
2017/07/28 Javascript
无限循环轮播图之运动框架(原生JS实现)
2017/10/01 Javascript
使用js和canvas实现时钟效果
2020/09/08 Javascript
vue 解决IOS10低版本白屏的问题
2020/11/17 Javascript
[01:00]DOTA2 store: Collection of Artisan's Wonders
2015/08/12 DOTA
Python简单格式化时间的方法【strftime函数】
2016/09/18 Python
利用python在excel里面直接使用sql函数的方法
2019/02/08 Python
Python把对应格式的csv文件转换成字典类型存储脚本的方法
2019/02/12 Python
Python 生成器,迭代,yield关键字,send()传参给yield语句操作示例
2019/10/12 Python
Python xmltodict模块安装及代码实例
2020/10/05 Python
HTML5的结构和语义(1):前言
2008/10/17 HTML / CSS
HTML5通过navigator.mediaDevices.getUserMedia调用手机摄像头问题
2020/04/27 HTML / CSS
ALDI奥乐齐官方海外旗舰店:德国百年超市
2017/12/27 全球购物
英国伦敦的睡衣品牌:Asceno
2019/10/06 全球购物
世界上最受欢迎的花店:1-800-Flowers.com
2020/06/01 全球购物
几个MySql的面试题
2013/04/22 面试题
广播电视新闻学专业应届生求职信
2013/10/08 职场文书
毕业生自荐书
2013/12/18 职场文书
外企财务年会演讲稿
2014/01/03 职场文书
理财计划书
2014/08/14 职场文书
教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
深度好文:50条没人告诉你的人生经验,句句精辟
2019/08/22 职场文书
Pytorch反向传播中的细节-计算梯度时的默认累加操作
2021/06/05 Python