后端传的是二进制数据,前端用
let data = res.data;
let url = window.URL.createObjectURL(new Blob([data],{type:someType));
let link = document.createElement("a");
link.href = url;
document.body.appendChild(link);
link.click();
手机上用 chrome 可以下载,用 qq、uc 等浏览器一直显示下载失败。
谢谢!
1
LyleRockkk 2020-03-02 16:27:09 +08:00
这个本来就有兼容性问题的,换方案吧
|
2
free9fw 2020-03-02 16:31:31 +08:00
试试我的方法 aHR0cDovL2Jsb2cuY3BlYXNlLmNvbS8yMDE5LzAyLzI2L0Rvd25sb2FkLWZpbGVzLWluLXdlY2hhdC8=
|
3
tommyZZM 2020-03-02 16:32:55 +08:00
可以考虑用用 File API
|
4
wunonglin 2020-03-02 16:34:10 +08:00
本明显他们不支持
|
6
ysc3839 2020-03-02 19:26:23 +08:00 via Android
试试用 data uri ?仍然不行的话就是那些浏览器的问题了。
|
7
DOLLOR 2020-03-02 22:38:32 +08:00
link.href = 'application/octet-stream;base64,文件的 BASE64 内容';
link.download = '文件名.扩展名'; |
8
DOLLOR 2020-03-02 22:39:31 +08:00
上面错了,改一下。
link.href = 'data:application/octet-stream;base64,文件的 BASE64 内容'; link.download = '文件名.扩展名'; |