【问题标题】:Cross-browser link to file on local system跨浏览器链接到本地​​系统上的文件
【发布时间】:2009-08-10 12:24:35
【问题描述】:

我想建立一个从网页到本地文件系统上的文件的链接,并使其在所有浏览器(或至少在 Internet Explorer、Firefox 和 Chrome 中)都能正常工作。

例如,以下在 Internet Explorer 中有效:

<a href="\\myserver\doc\info.pdf">Info here</a>

但不在 Firefox 和 Chrome 中。

有没有办法让链接在所有浏览器中都有效?

或者一种使用javascript检测它是哪个浏览器然后根据文件名显示适当链接的方法?

【问题讨论】:

标签: html cross-browser file-link


【解决方案1】:

通过 HTTP(S) 检索到的页面上的本地文件链接在 Mozilla/Firefox 中被故意禁用,因为它们可能存在安全风险,并且过去曾被用于攻击。

但是,您可以覆盖此行为。有关详细信息,请参阅 MozillaZine 中的this article

【讨论】:

  • 很老但是无论如何,因为我有一个问题:为什么这是一个安全问题?为什么比通过 HTTP 下载同一个文件更成问题?
  • @Rafiki:链接的文章列出了一些风险。如果您想了解更多,这听起来是一个很好的新问题。考虑在security.stackexchange.com 上这样询问。
【解决方案2】:

尝试在您的网址前加上 file:///

【讨论】:

  • 您还需要将反斜杠转换为正斜杠,因此您的示例将是 file://///myserver/doc/info.pdf。这在 sleske 在他的回答中给出的链接中有所介绍。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-22
  • 2012-05-30
  • 2017-01-12
  • 2012-06-05
  • 1970-01-01
相关资源
最近更新 更多