前端通过后端返回的数据流下载文件

后端返回文件流,下载的文件无法读取,损坏,原因是因为接口处理没有加 blob类型

downloadFile(row.fileId).then(res => {

// res 即后端返回的数据流

const blob = new Blob([res.data])

if (blob && blob.size === 0) {

this.$notify.error('内容为空,无法下载')

return

}

const link = document.createElement('a')

link.href = window.URL.createObjectURL(blob)

link.download = row.fileName

document.body.appendChild(link)

link.click()

window.setTimeout(() => {

window.URL.revokeObjectURL(blob)

document.body.removeChild(link)

}, 0)

this.$message.success('下载成功')

})

相关推荐
离&染8 分钟前
vue.js2.x + elementui2.15.6实现el-select滚动条加载数据
前端·javascript·vue.js·el-select滚动加载
2501_9167665410 分钟前
【面试题1】128陷阱、==和equals的区别
java·开发语言
inferno14 分钟前
HTML基础(第一部分)
前端·html
kirinlau16 分钟前
pinia状态管理在vue3项目中的用法详解
前端·javascript·vue.js
zhuà!1 小时前
腾讯地图TMap标记反显,新增标记
前端·javascript·vue.js
a程序小傲1 小时前
蚂蚁Java面试被问:注解的工作原理及如何自定义注解
java·开发语言·python·面试
未知原色1 小时前
web worker使用总结(包含多个worker)
前端·javascript·react.js·架构·node.js
ttod_qzstudio1 小时前
CSS改变图片颜色方法介绍
前端·css
似水এ᭄往昔1 小时前
【C++】--封装红⿊树实现mymap和myset
开发语言·数据结构·c++·算法·stl
charlie1145141911 小时前
嵌入式现代C++教程:C++98——从C向C++的演化(3)
c语言·开发语言·c++·笔记·学习·嵌入式