繁体   English   中英

Web 应用程序访问用户的文件系统

[英]Web application access user's file system

我正在为我的客户创建一个 Web 应用程序。 该应用程序将安装在公司网络内的专用服务器上。 他想在网页上查看他的本地文件列表(来自他的本地 PC)。 他的意思是任何访问者都可以从某个文件夹中看到他的本地文件列表。

我知道Web 应用程序无法访问访问者的文件系统。 浏览器通过设计限制了这一点。 当然,可能会有一些浏览器扩展、小程序和 Flash 应用程序甚至黑客......但事实并非如此。

但是我该怎么跟他解释呢? 他将我指向“另存为”或“加载文件”对话框,并说其他应用程序可以执行此操作。 不知道怎么跟他解释这只是浏览器的交互。

我试图用谷歌搜索一些证明的链接,但无法快速找到一些东西。

你们能给我一些描述无法从 Web 应用程序访问用户文件夹的文档的链接吗?

最后我做了一些引用的汇编,并且完成了..

https://en.wikipedia.org/wiki/JavaScript#Security

脚本在沙箱中运行,在沙箱中,脚本只能执行与Web相关的操作,而不能执行创建文件等通用编程任务

https://www.us-cert.gov/publications/securing-your-web-browser

JavaScript,也称为ECMAScript,是一种脚本语言,用于使网站更具交互性。 JavaScript标准中有一些规范限制某些功能,例如访问本地文件。

https://developer.mozilla.org/en-US/docs/Web/API/File_System_API/Introduction#restrictions

由于文件系统是沙盒,因此Web应用程序无法访问其他应用程序的文件。 您也无法将文件读取或写入用户硬盘上的任意文件夹(例如,“我的图片”和“我的文档”)。

Mozilla的。 文件系统API限制

由于文件系统是沙盒,因此Web应用程序无法访问其他应用程序的文件。 您也无法将文件读取或写入用户硬盘上的任意文件夹(例如,“我的图片”和“我的文档”)。

也许这个文件摇滚?

http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#security-considerations

第4.1节

应用程序可以请求临时或永久存储空间。 临时存储可能更容易获得,由UA自行决定[更宽松的配额限制,可在不提示用户的情况下提供],但存储在那里的数据可能在UA方便时被删除,例如以处理磁盘空间不足。

相反,一旦授予了持久存储,UA就不应该在没有用户干预的情况下删除应用程序存储在那里的数据。 应用程序当然可以随意删除它。 在向应用程序授予持久存储空间之前,UA应该要求用户许可。

此API指定文件系统上下文中的标准源隔离,以及跨调用的数据持久性。 应用程序可能会使用临时存储来进行缓存,如果它仍然来自前一个会话,它通常很有用。 另一方面,如果在下次调用时无法再次访问,则持久性数据将毫无用处。 但是,即使是持久性数据也可以由用户手动删除[通过UA或通过直接文件系统操作]。

与客户端 - 服务器模型争论怎么样? 您向服务器发送请求(网站请求,文件或其他),网络服务器可以响应。 服务器上没有直接的文件系统访问权限(中间的Web服务器),客户端可以选择他发送给服务器的内容(浏览器中的文件选择器对话框)。

下面的 html 允许我查看本地文件列表。

<!DOCTYPE html>
<html>
<body>

<p>Click on the "Choose File" button to upload a file:</p>

<form action="/action_page.php">
  <input type="file" id="myFile" name="filename">
  <input type="submit">
</form>

</body>
</html>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM