post({
url: "...",
params: {
...
},
responseType: "blob",
onSuccess: (res) => {
console.log("--下载配方--", res);
let blob = new Blob([res.data]);
let url = window.URL.createObjectURL(blob); // 创建一个临时的url指向blob对象
// 创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
let a = document.createElement("a");
a.href = url;
a.download = "配方.json";
a.click();
// 释放这个临时的对象url
window.URL.revokeObjectURL(url);
},
});
参考: vue使用axios接收后台返回的文件流下载文件_点动绝的博客-CSDN博客
responseType: "blob" 一定要设置