vue3.x通过后端返回的图片流下载图片

574 阅读1分钟

vue3.x通过后端返回的图片流下载图片

1.构建方法

const token = "Bearer "+storage.get('token')
axios.get(`路径`,
  {
    headers:{
      Authorization:token
    },
    responseType:'blob'
  }).then( (res:any) => {
  const blob = new Blob([res.data])
  const fileName = '二维码.jpg'
  if ('download' in document.createElement('a')) { // 非IE下载
    const dlink = document.createElement('a')
    dlink.download = fileName
    dlink.style.display = 'none'
    dlink.href = URL.createObjectURL(blob)
    document.body.appendChild(dlink)
    dlink.click()
    URL.revokeObjectURL(dlink.href) // 释放URL 对象
    document.body.removeChild(dlink)
  }
}).catch( err => {
  console.log(err)
})

2.直接调用方法即可