Buf*_*low 36 html5 google-chrome
自从最新版本以来,我经历过Chrome的一些意想不到的行为:在Firefox中,此代码工作正常:
<a id="playlist" class="button" download="Name.xspf" href="data:application/octet-stream;base64,PD94ANDSOON" style="display: inline;">Download Me</a>
Run Code Online (Sandbox Code Playgroud)
它无法在Chrome中运行(只需下载名为"下载"的文件),但之前的工作非常好.我有什么要改变它再次起作用?
Aug*_*ger 45
阅读评论,我遇到了与@ buffer-overflow相同的问题,在问题中发现了这个问题:
我猜测网页和下载的来源不同.我们不再尊重跨源请求的下载属性建议文件名.单击该链接仍会启动下载.但文件名仅源自完全依赖于服务器的因素(例如响应中的Content-Disposition头和URL).
所以没有机会让它工作...... :(
Ema*_*ilă 37
经过一番研究,我终于找到了你的问题.
<a>下载属性:
如果HTTP标头Content-Disposition:存在并提供与此属性不同的文件名,则HTTP标头优先于此属性.
如果此属性存在并且Content-Disposition:设置为内联,则Firefox优先考虑Content-Disposition,例如文件名大小写,而Chrome优先考虑下载属性.
HTTP-Header Content-Disposition
我在wordpress上遇到了这个问题,问题是wordpress生成了文件的完整路径,在a标签中你必须删除完整的域名并添加一个相对路径
示例,而不是:
<a href="http://mywordpresssite.com/wp-content/uploads/file.mp4" download="file.mp4" >
Run Code Online (Sandbox Code Playgroud)
你必须这样做:
<a href="/wp-content/uploads/file.mp4" download="file.mp4">
Run Code Online (Sandbox Code Playgroud)
这将使它工作
| 归档时间: |
|
| 查看次数: |
59131 次 |
| 最近记录: |