为了账号安全,请及时绑定邮箱和手机立即绑定

vue下载二进制流文件,这种方法你试过吗

标签:
Vue.js

    今天给各位同学说一种vue下载二进制流文件的方法:后台直接返回文件的二进制内容,然后前端转化再下载。具体内容如下:

    Blob、ajax(axios),Blob 对象表示一个不可变、原始数据的类文件对象。Blob 表示的不一定是JavaScript原生格式的数据,具体使用:

axios({

  method: 'post',

  url: '/export',

  responseType: 'arraybuffer',

})

.then(res => {

  // 假设 data 是返回来的二进制数据

  const data = res.data

  const url = window.URL.createObjectURL(new Blob([data], {type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"}))

  const a = document.createElement('a')

  a.href = url

  a.click()

  // const link = document.createElement('a')

  // link.style.display = 'none'

  // link.href = url

  // link.setAttribute('download', 'excel.xlsx')

  // document.body.appendChild(link)

  // link.click()

  // document.body.removeChild(link)

})

    好啦,以上便是关于vue下载二进制流文件,这种方法你试过吗的全部内容,更多内容干货可关注慕课网~


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消