据我所知,<a download>应该在单击时下载响应文件。我有以下代码不起作用:
<a href="{{ download_url }}" style="cursor: pointer" download>Download PDF</a>相关的响应标题:
Content-Disposition: filename="Podsumowanie_wizyty_X_Y_2016-07-06.pdf"
Content-Type: application/pdf
Date: Thu, 15 Sep 2016 13:26:19 GMT
Server: WSGIServer/0.1 Python/2.7.11
Vary: Authorization, Cookie
x-frame-options: SAMEORIGIN将查看返回的文件,而不是下载。
我还发现,下面的示例运行良好:example1
但是下面的示例查看文件而不是下载:example2
所有的东西似乎都像铬一样正常工作。
我能做点什么吗?没有Content-Disposition: attachment;,它应该能够工作。如果可能的话,我想避免修改标题。
发布于 2016-09-15 14:09:52
这是一种已知和记录在案的行为。
在您的例子中,您的header格式不太好,Content-Disposition需要在inline和attachment之间设置一个(实际上它稍微复杂一些,参见RFC1806和RFC2616)。inline在FireFox中被视为默认值(参见MDN)。但是另一个浏览器的行为可能有所不同(不管download是否优先于Content-Disposition,请参阅后面的内容)。
从这一刻起,浏览器的行为也会有所不同(这也解释了另外两个例子之间的区别):Chrome赋予download属性优先权,而FireFox赋予Content-Disposition优先级(参见MDN)。
不幸的是,您没有任何选项,只能修复您的header (如果您想支持FireFox)。
发布于 2016-09-15 15:10:07
当它应该是download>的时候,你就有了download=
https://stackoverflow.com/questions/39512805
复制相似问题