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

后端返回文件流,下载的文件无法读取,损坏,原因是因为接口处理没有加 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('下载成功')

})

相关推荐
再吃一根胡萝卜7 小时前
DSH 插件的 Host 与 Client:为什么「只加载了 Host」,以及要不要自己写 Client 加载器
前端
parade岁月8 小时前
AI 写的前端代码为什么总像 5 年前的?Chrome 官方出手了
前端
新*8 小时前
从一段 WebSocket 代码聊开:bytes 不是 zlib、binaryType 决定一切,15MB 大消息的零拷贝优化
javascript·python·websocket·性能优化·blob·zlib·arraybuffer
tryCbest8 小时前
Vue系列——第 15 篇:内置组件全家桶——Transition、Teleport、Suspense、KeepAlive
前端·vue.js
易师傅8 小时前
技术面试已死?AI 时代,真正拉开程序员差距的是什么?
前端·后端·程序员
David猪大卫8 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
jay神8 小时前
基于深度学习的交通流量预测系统(Web 版)
前端·人工智能·深度学习·yolo·计算机毕业设计
OpsEye8 小时前
别再挨个充会员了:多模型编码,最麻烦的从来不是选模型
javascript·ai编程
AiMan9 小时前
别再把秘塔会话逐个点开:这可把秘塔多个会话一次导出?AI导出鸭
前端·后端·面试
AiMan9 小时前
你好,请问可以一键导出Dola多个对话框内容吗?一键导出一整年哦
前端