在 Firefox 中从以下 URL 下载文件(Eclipse 的 win32 zip)时,文件名为eclipse-jee-juno-SR1-win32.zip
.
http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/juno/SR1/eclipse-jee-juno-SR1-win32.zip&url=http://download.eclipse.org/technology/epp/downloads/release/juno/SR1/eclipse-jee-juno-SR1-win32.zip&mirror_id=1
但是,此文件名未在Content-disposition
标头中指定,这是获取服务器建议文件名的标准方法。
这里,eclipse的下载只是一个例子。我看到文件名是 URL 的一部分,但是是否有其他方法来获取文件名?在这种情况下,我可以使用正则表达式从 URL 中提取文件名,但不能保证它是每个没有 Content-disposition 标头的 URL 的一部分。
问题:当没有 Content-disposition 标头时,如何获取下载的文件名?或者,更本地化,Firefox 是如何提出上述名称的?
还是 Firefox 只是在此处解析 URL,而我遇到过一个案例,尽管从间接的、脚本交付的下载中提取文件名,但它恰好可以工作?