后端返回word文档流后,前端下载下来文件内容变成undifiend
时间: 2024-03-03 09:49:18 浏览: 189
这个问题可能是由于前端没有正确处理后端返回的文件流导致的。可以按照以下步骤来解决:
1. 确定后端返回的文件流是否正确,可以通过 Postman 或者浏览器网络面板来查看返回的数据是否是预期的 word 文档流。
2. 在前端处理文件流时,需要将数据流转换为 Blob 对象,可以使用以下代码:
```javascript
const blob = new Blob([response.data], { type: 'application/msword' });
```
3. 然后将 Blob 对象转换为文件 URL,可以使用 URL.createObjectURL 方法,例如:
```javascript
const url = window.URL.createObjectURL(blob);
```
4. 最后创建一个下载链接,让用户点击下载,可以使用以下代码:
```javascript
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', 'file.doc');
document.body.appendChild(link);
link.click();
```
如果以上步骤都正确执行,应该可以正常下载并打开 word 文档。
阅读全文