- 使用form表单method="POST"可以下载文件
- 使用非form表单提交的post请求下载文件 解析不了 是一堆乱码
- 有解决方法没?
用插件,可以隐藏细节,只需要调用即可,使用教程:https://blog.csdn.net/qq_3321...
这里是下载地址:https://github.com/johnculvin...
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答877 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
这么长时间了 自己来回答一下吧。
这个问题其实是针对于fetch请求回的结果不能下载,而form表单提交可以自动下载。这里要解决的是fetch要如何自动下载。
有个对象叫做Blob对象; 而fetch请求的是Response对象我们通常使用的是
res.json()
,这个方法返回的是一个被解析为JSON格式的Promise对象;这里我们需要一个Blob对象,使用res.blob()
方法可以获取。使用URL的createObjectURL和revokeObjectURL分别用于创建Blob对象和允许平台在合适的时机进行垃圾收集。具体的代码如下:
最后贴一个Stack Overflow相似的问题。