后台返回给前端完整的文件信息,如何通过JS提示下载下来

我在网上看的demo,文件流下载,通过URL读取出数据返回给了前台,要如何在前台下载成同样格式文件?图片说明图片说明 图1弹窗了需下载的文件所有数据

5个回答

eruiwen1624
原来昵称可以随便改 谢谢分享
大约一年之前 回复

window.open("xx.xlsx")

提示保存还是另存为是浏览器自己有的,不用自己写。
只要后台请求头设置
response.setContentType("application/octet-stream; charset=utf-8");//二进制下载
response.setHeader("Content-Disposition", "attachment; filename=" ");//设置文件在浏览器打开还是下载
不太记得了...

qq_33605879
杭电鬼先生 这种情况是点击链接出发才有的吧 ajax貌似不行
4 个月之前 回复
u012330103
x1124961758 说的非常好,特意登陆给个赞
大约一年之前 回复

js没法做文件操作
文件下载是后台处理的
前台点击一个链接,后台返回对应的文件流

blvyoucan
零起跑线 楼下已经回答了
一年多之前 回复
super_nana
super_nana 你好,后台提供的文件流,前端如何接收呢?
一年多之前 回复

一半前后端分离项目,文件传输都使用url,而不是具体的文件流,因为文件流太消耗系统资源,而且传输还有大小限制。
可以考虑后端生成文件,放到指定的文件服务器上,返回一个下载url给前端,前端再提示下载即可。

sinat_36339134
HessianTes 假设生成一个20兆的数据要30s 返回给前台的响应时间如果是在10s内没有响应就结束了 这个时候文件都没有生成 怎么办
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐