2013-08-27 31 views
0

HTML5有一个方便的下载属性,允许一个文件名为foo.exe的的下载保存为一个不同的名称,如bar.exe:使用downloadify下载的二进制文件

<a href="http://example.com/foo.exe" download="bar.exe">Download It</a> 

然而,支撑有限到最新版本的Chrome和Firefox。我打算将这些用于这些浏览器,但对于各种IE版本使用Downloadify

我见过的大多数Downloadify示例都是关于从客户端保存文本数据的。是否可以使用来自已知URL的二进制文件进行Downloadify?

+0

你试过了吗?我不明白为什么它不会让你下载.exe文件... –

+0

选项参数对象看起来像什么数据是在一个已知的URL托管的二进制文件? – Bullines

回答

1

作为一个建议,如果你所要做的只是让浏览器提示用户下载一个特定的名字,你不需要使用像Downloadify这样的东西。 HTML5方法是一个好方法,但正如您所说,支持是有限的。另一种“传统”方式是使用Content-Disposition HTTP头。例如,如果您使用的是Apache,你可以把这样的事情在你的.htaccess文件:

<LocationMatch "/path/to/foo.exe"> 
    Header set "Content-disposition" "attachment; filename=bar.exe" 
</LocationMatch> 

这导致内容处置头被设置为“附件”,这将导致浏览器下载,而不是直接查看,您也可以为用户指定建议的文件名。