4

我有一个 GZipped JavaScript 文件,我使用 data:URI 对其进行编码。

例如:

<a href="data:application/x-gzip;base64,FOO">My Javascript File</a>

当用户右键单击并保存此文件(在 Chrome 中)时,我希望生成的文件名为download.js.gz. 这样,当用户双击该文件(在 Mac OS X 中)时,它会被正确解压缩并重命名为download.js,并且他们可以轻松查看内容。

问题是当我使用内容类型text/javascript(或application/x-javascript)时,文件被保存为download.js. 当我使用内容类型application/x-gzip时,文件被保存为download.gz.

有没有办法让文件保存为.js.gz

这是两个链接的工作示例:http: //jsfiddle.net/xYm8w/3/

该文件必须是数据 uri,而不是指向实际文件的链接。我尝试更改标签之间的文本<a>,但它根本不影响任何东西。

4

1 回答 1

4

除了 Chrome 之外,似乎没有办法在浏览器中执行此操作。因此,我能想到的最佳选择是通知用户正常保存文件(以便它根据内容类型自动插入正确的扩展名),然后让他们进入 finder 并重命名文件以附加 ' .gz' 扩展名。

但是,在 Chrome 上,您可以使用标签的download属性<a>(我通过这个答案找到了)。示例:http: //jsfiddle.net/pYpqW/

于 2012-01-09T08:25:38.080 回答