下载二进制使用a标签就可以做到,所以可以动态创建标签,下载完成后删除a标签

function downLoad(buffer, name, type){if(!buffer || !type) return const blob = new Blob([buffer], {type: "application/arraybuffer",});// 兼容不同浏览器的URL对象const url = window.URL || window.webkitURL || window.moxURL;// 创建下载链接const downloadHref = url.createObjectURL(blob);// 创建a标签并为其添加属性const link = document.createElement("a");link.href = downloadHref;link.download = `${name || '导出文件'}.${type}`;// 触发点击事件执行下载document.body.appendChild(link);downloadLink.click();// 下载完成就删掉a标签document.body.removeChild(link); //释放blob对象url.revokeObjectURL(downloadHref);
}

以上完整代码开箱即用

请求文件流的时候也要设置返回参数格式,不然会乱码,以axios为例

axios.post("xxxxx", params, {responseType: "arraybuffer",});

js下载二进制流到本地相关推荐

  1. uniapp 下载文件/二进制流数据文件 ,保存文件 ,打开文件。以及H5下载二进制流文件。

    前提注意点 downloadFile 发送的是GET请求. 如果url接口返回的是二进制流数据.则要求后端content-type 里面填写具体的返回文件类型.否则下在的文件会没有后缀名.比如exce ...

  2. js下载文件流,提示文件损坏问题

    记录一下前端下载后端返回的文件流,提示文件损坏问题. const blob = new Blob([content.data], {// type是需要对应的文件类型type:"applic ...

  3. 前端下载二进制流文件

    更多文章 平时在前端下载文件有两种方式,一种是后台提供一个 URL,然后用 window.open(URL) 下载,另一种就是后台直接返回文件的二进制内容,然后前端转化一下再下载. 由于第一种方式比较 ...

  4. vue下载二进制流文件转为Excel文件

    let blob = new Blob([data], {   type: 'application/octet-stream' });// 转化为blob对象 let filename = file ...

  5. js 将二进制流html导出excel,js 实现纯前端将数据导出excel

    使用table标签方式将json导出xls文件 导出 function tableToExcel(){ //要导出的json数据 const jsonData = [ { name:'路人甲', ph ...

  6. Js 下载文件流支持IE

    function download(url, data, name) {thisFun.LoadingShow();name = name || '导出结果.csv';var xhr = new XM ...

  7. JS下载图片保存在本地

    const imgUrl = "";// 图片链接const a = document.createElement('a');// 这里是将url转成blob地址,fetch(im ...

  8. php下载二进制流文件下载,从MySQL流式传输二进制文件以使用PHP下载

    我有一个存储在MySQL表longblob字段中的Excel电子表格.我需要检索此数据,然后将其作为可下载文件传输给用户,最好不要先将其写入磁盘. 可能? 编辑 – 呃,刚想通了--发表在下面的答案. ...

  9. 使用Fetch请求,如何下载二进制流格式的文件

    1.需求:后端返回二进制文件流格式,如图在浏览器中展示 2.前端转换为所需文件 fetch(url, newOptions).then(res => res.blob()) .then(data ...

最新文章

  1. php时间函数 1天,PHP函数第20款:两个时间相差的天数SubTime,不满1天按1天算
  2. 解决Eclipse debug卡慢问题!!!
  3. Mysql主从复制(docker例子)
  4. Anaconda安装与环境配置
  5. VS 2015 开发Android底部导航条----[实例代码,多图]
  6. C++之set()函数和get()函数探究
  7. 大数据_Spark框架_快速上手_word count 案例-功能实现---Spark工作笔记0007
  8. python安装方法mac_在Mac上删除自己安装的Python方法
  9. CVPR2021目标检测和语义分割论文分类汇总 | 源码 |
  10. 使用procexp.exe查看线程
  11. 几个文件vtp格式转stl格式
  12. BUUCTF[SCTF2019]Who is he题解
  13. 我的团长我的团第三集
  14. 第二章 装配bean
  15. 存储-对象存储、文件存储和块存储
  16. 潮汐计算php源码,潮汐选股公式
  17. cli模式下php会超时吗,php cli模式下调试
  18. C语言实现 IFFT 运算
  19. 微信电脑版聊天记录转移
  20. 用python输入圆的半径、输出圆的周长_Python基础题练习(输入圆的半径计算周长面积,判断年份是否是闰年)...

热门文章

  1. 机器学习——学习理论
  2. C语言对数函数log
  3. ontop-vkg 学习
  4. c语言编求二重积分_如何用C语言求二重定积分?
  5. python函数助手_转jmeter(十五)函数助手
  6. 好的软文推广都使用了哪些方法?
  7. 可视化开发非标系统,低代码平台零元就能实现
  8. 基于java二手商品交易平台设计与实现
  9. M5 Forecasting - Accuracy:Multi-time series prediction with prophet
  10. python/php/java/nodejs网上租车vue+elementui汽车租赁系统