继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

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

幕布斯7119047
关注TA
已关注
手记 432
粉丝 28
获赞 99

    今天给各位同学说一种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下载二进制流文件,这种方法你试过吗的全部内容,更多内容干货可关注慕课网~


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP