首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >火狐< download>问题

火狐< download>问题
EN

Stack Overflow用户
提问于 2016-09-15 13:49:28
回答 2查看 136关注 0票数 2

据我所知,<a download>应该在单击时下载响应文件。我有以下代码不起作用:

代码语言:javascript
复制
<a href="{{ download_url }}" style="cursor: pointer" download>Download PDF</a>

相关的响应标题:

代码语言:javascript
复制
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;,它应该能够工作。如果可能的话,我想避免修改标题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-09-15 14:09:52

这是一种已知和记录在案的行为。

在您的例子中,您的header格式不太好,Content-Disposition需要在inlineattachment之间设置一个(实际上它稍微复杂一些,参见RFC1806RFC2616)。inline在FireFox中被视为默认值(参见MDN)。但是另一个浏览器的行为可能有所不同(不管download是否优先于Content-Disposition,请参阅后面的内容)。

从这一刻起,浏览器的行为也会有所不同(这也解释了另外两个例子之间的区别):Chrome赋予download属性优先权,而FireFox赋予Content-Disposition优先级(参见MDN)。

不幸的是,您没有任何选项,只能修复您的header (如果您想支持FireFox)。

票数 2
EN

Stack Overflow用户

发布于 2016-09-15 15:10:07

当它应该是download>的时候,你就有了download=

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39512805

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档