通过Web界面进行本地文件共享

本文关键字:文件共享 Web 界面 通过 | 更新日期: 2023-09-27 18:13:49

我们有一个文档管理系统,用户通过网页上传文档,我们在云服务器上跟踪文件。有些用户希望将他们的文件存储在办公室的本地文件共享中,例如"'server'folder'file.doc",而不是上传文档本身,他们只会给我们那个"URL"。

当在我们的系统中查看该文档时,他们只会看到指向该URL的链接,例如:

<a href="''server'folder'file.doc">Your file</a>

不幸的是,浏览器不允许这样的链接(或file://链接),所以我试图找到一种方法,使这个工作。我做了一些研究,读了一些网页,人们告诉我,你不能从浏览器访问一个文件的URL - file://。这在大多数浏览器中都被阻止了,因为这可能会造成巨大的安全威胁。

我们需要在Firefox, Chrome和IE中工作,我已经看到了一些使用一些附加组件的可能方法,但这似乎是一种非常笨拙的方法。

这些是我尝试过的一些插件:

https://addons.mozilla.org/en-US/firefox/addon/locallink/

https://addons.mozilla.org/en-US/firefox/addon/local-filesystem-links/?src=search

另一个选择是更改Firefox本身的一些设置,以允许其中一些功能工作,但为超过1000个用户这样做是不切实际的。

我想我不是第一个有这个问题的人。有没有人找到一个合理的解决方案,可以跨浏览器工作,而不会造成支持噩梦(例如,不得不改变设置,或安装插件)?

经过多次调查和建议,我发现下面的答案实际上是不可能的,除非你想在系统中打开主要的安全漏洞。

通过Web界面进行本地文件共享

实际上没有任何明智的方法来完成您所追求的。你有FileAPI,你可以通过Javascript访问它应该让你读/写文件可访问的网络路径-限制是,用户实际上必须"选择"文件使用打开/保存文件对话框。

所以你不能只是向他们展示一个文件列表,他们必须每次都选择它。

你能做的最好的就是在你的服务器上存储一个文件列表和一个"使用本地文件"按钮来使用FileAPI来推送数据。使用FileAPI当然也限制了你只能使用现代浏览器(不包括IE8)

或者你可以使用一个签名的java applet(它需要强签名才能获得本地文件访问),它在浏览器中运行,以增加对本地文件的访问,并以这种方式处理它。

FileAPI参考可以在http://www.w3.org/TR/FileAPI/

找到

选项:

  1. 使用Sencha Desktop将应用部署为桌面应用

  2. 使用Flash

    http://help.adobe.com/en_US/AS2LCR/Flash_10.0/help.html?content=00000451.html

  3. 使用带签名的Java applet