我知道文件系统api暴露给本机客户端,但它似乎不允许在沙箱外访问。有一个api,可以通过提示窗口访问沙箱外面。
如果我理解正确,则无法访问目录。我最近遇到了chrome dev,它允许您在任何目录中创建工作区,并允许在目录级别进行剪切,复制和粘贴操作。我想知道他们如何获得沙盒外的文件和目录的访问权。
答案 0 :(得分:6)
Chrome Dev Editor不是Chrome扩展程序,而是Chrome应用程序。 Chrome应用可以使用chrome.fileSystem
API读取和写入用户选择的目录和文件。
扩展程序只能使用非扩展程序特定的FileSystem API访问沙盒文件系统。允许扩展在虚拟文件系统外部写入的唯一API是chrome.downloads.download
,它允许扩展将文件保存到用户选择的目录中。执行此操作后,扩展程序可以删除,但不能修改(已下载)文件。
(如果您的扩展程序请求file://*/*
或<all_urls>
权限和,则用户会在“扩展程序”中勾选“允许访问文件URL&#34;”复选框页面,然后您的扩展程序将具有对用户文件系统的只读访问权限;如果您想要使用此方法,请阅读https://stackoverflow.com/a/19493206)