前端vue文件流怎么下载
时间: 2023-12-23 16:02:55 浏览: 187
前台大神用的vue-resources,下载即可使用,没毛病!
您可以使用axios库发送GET请求,将后端返回的文件流转化成Blob对象,然后通过创建URL的方式进行下载。代码示例如下:
```javascript
axios({
method: 'get',
url: '/api/download', // 后端返回文件流的接口地址
responseType: 'blob' // 指定响应的数据类型为二进制流
}).then(res => {
const blob = new Blob([res.data])
const url = window.URL.createObjectURL(blob)
const link = document.createElement('a')
link.href = url
link.download = 'file.xlsx' // 下载时的文件名称
document.body.appendChild(link)
link.click()
document.body.removeChild(link)
window.URL.revokeObjectURL(url)
})
```
其中,`link.click()` 触发元素的点击事件,弹出下载提示框;`window.URL.revokeObjectURL()` 释放URL对象,避免内存泄露。
阅读全文