【发布时间】:2019-02-15 23:16:32
【问题描述】:
我使用 FileSystem API 创建了一个文件。我无法从一个简单的链接打开它。但是,我可以在浏览器中手动打开放置 URL 的页面(文件系统:http://localhost:8100/temporary/log.csv)
我目前仅在 google chrome 上进行测试。
window.open("filesystem:http://localhost:8100/temporary/log.csv")
我希望它会在新窗口中打开。
更新: 此问题已通过使用 window.URL.createObjectURL() 得到修复 所以链接会是类似 blob:http://localhost:8100/7aa5685c-ca4f-485a-8bf8-d1c95e6257ab 的东西
【问题讨论】:
-
"filesystem:http://localhost:8100/temporary/log.csv没有意义,HTTP是一种网络协议,您使用它请求任何服务器操作。如果您想从文件系统读取文件,您的服务器可以执行此操作(只要服务器在 您的 本地系统上运行),但您在浏览器中的 JS(-> 您的网页)可能无法访问由于安全问题,本地文件系统。 -
当您在 URL 字段中输入它时,您确定它可以正常工作吗?因为我认为打开本地文件(至少在 chrome 和 firefox 中)应该是
file:///而不是filesystem:。你用的是什么浏览器? -
FileSystem API 是非标准的,与许多浏览器不兼容,并且已弃用。你应该避免使用它。
-
@messerbill 文件保存在 chrome 的文件系统中。如果我在浏览器中键入 filesystem:localhost:8100/temporary/log.csv 我可以看到它,问题是如何从链接访问它。谢谢
-
@Olian04 如果我在浏览器中输入 filesystem:localhost:8100/temporary/log.csv 我可以访问该文件
标签: javascript html5-filesystem