后端正常返回文件流,前端下载下来的文件始终打开失败!

0 阅读1分钟

后端正常返回文件流,前端下载下来的文件始终打开失败:

Microsoft Word Word在试图打开文件时遇到错误。 请尝试下列方法: 检查文档或驱动器的文件权限。确保有足够的内存和磁盘空间。用文本恢复转换器打开文件。

试验了很多下载方法,引入了其他库,均打开失败!

最终发现,问题在于项目在初始构建时,引入过mock!!!

问题分析

  1. 1、main.js 中引入了 require("./mock/mock")
  2. 2、mock.js 使用 Mock.mock() 拦截了多个接口
  3. 3、当你调用 oneDownload() 时,Mock.js 会拦截这个请求并返回模拟数据
  4. 4、由于Mock.js默认返回JSON格式数据,而你的前端代码期望的是文件流,导致下载失败

image.png