后台返回二进制文件,前端点击下载
后台数据以二进制字符串返回
调接口获取二进制字符串
axios.get("/downLoad",{
headers:{
responseType: 'blob'
}
}).then(res=> {
downLoad(res.data, `文件名`)
})
downLoad(data,fileName) {
if (!data) {
return;
}
// 创建一个Blod对象 并且用url指向它
let url = window.URL.createObjectURL(new Blob([data]));
// 创建a标签
let link = document.createElement("a");
// 不让a标签显示
link.style.display = "none";
// a 标签的href 指向之前的url地址
link.href = url;
// 设置下载属性和文件名
link.setAttribute("download", `${fileName}.xlsx`);
// 将a标签插入到页面
document.body.appendChild(link);
// 点击a标签
link.click();
// 下载成功后,移除a标签和url对象
document.body.removeChild(link)
window.URL.revokeObjectURL(url)
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)