【发布时间】:2017-05-14 01:28:18
【问题描述】:
我正在向服务器发送xhr 请求以下载文件。我将授权令牌包含在请求中,因此如果不使用xhr,我将无法下载文件。当收到来自服务器的响应时,我应该采取哪些步骤让浏览器下载文件?服务器应该包含哪些标头?
【问题讨论】:
-
您可以将服务器响应填充到数据 URL 中,将其放在
<a download>上并触发点击。请注意download属性是not well supported。或者,您可以使用普通表单提交(不是 XHR),将令牌发送到隐藏输入而不是请求标头中。 -
@Amadan,谢谢。这些是唯一的选择,对吧?
-
我不会这么说 - 但我能想到的只有这些。
-
看来this one 可以吗?
-
是的,这就是“将服务器响应填充到数据 URL 中,将其放在
<a download>并触发点击”的代码。