【问题标题】:Is the FileAPI in HTML5 dead?HTML5 中的 FileAPI 死了吗?
【发布时间】:2014-05-09 08:37:31
【问题描述】:

特别是指 HTML5 FileAPI。

我正在查看 W3C 规范提案, 从这里可以读到的内容:http://www.w3.org/TR/file-system-api/

“此文档的工作已停止,不应停止 引用或用作实施的基础。”


FileAPI 不再是 HTML5 规范,还是意味着它的实现细节会发生变化?

【问题讨论】:

标签: html fileapi


【解决方案1】:

2021 年 5 月更新:在浏览器中启用某种形式的文件系统访问的新努力,File System Access API。在撰写本文时,它仅受基于 Chromium 的浏览器(包括基于 Chromium 的 Microsoft Edge)支持。 Mozilla's position(对于 Firefox)是“等等看”。我还没有找到来自 Apple 的职位(适用于 Safari 和 iOS Safari)


File APIFile API - Directories and System 不同。

File API 本身不仅没有死,而且reasonably well-supported。 (IE8 是唯一一个没有支持的重要 [并且令人高兴地退缩] 桌面浏览器。)

目录和系统文档...

...定义用于导航文件系统层次结构的 API,并定义用户代理可以将用户本地文件系统的沙盒部分暴露给 Web 应用程序的方法。它建立在 File API 之上,而后者又建立在 File API:Writer 之上,每个都添加了不同类型的功能。

显然它存在问题,因此放弃了努力,可能会转而做其他事情。


...我似乎无法理解浏览器如何实现一个功能,然后突然意识到他们不再想要支持它

您可能会觉得this thread 很有趣。基本上,只有 Chrome 拥有它。 Mozilla、Apple 和 Microsoft(以及其他公司)不想实施它。例如,并不是谷歌决定他们不再需要它,而是他们从未说服其他供应商它值得实施。仅由一个供应商实施的 Web 标准不是 Web 标准。最后的钉子是announced here

【讨论】:

  • 所以我可以从本地磁盘取文件,但是我不能再写文件了?
  • 嗯,除了 Chrome 之外,你永远做不到。 :-)
  • 这真的很可惜,我正在开发一个声音编辑器,并且对磁盘上(未压缩的波形)文件的读/写访问非常方便。据我所知,IndexedDB 不支持查找和重写放在 ObjectStore 中的对象(blob),对吗?
  • 您可以自己将文件分块为索引 blob。绝对是一个糟糕的解决方法,但看起来没有更好的办法即将到来。
  • @NilsLindemann - 感谢您在这个古老的答案中指出这一点。我已经更新了它。 “......蓝色和橙色的浏览器......” 如果他们不知道你的意思,就没有必要让他们感到愚蠢。如果“蓝色”是指“微软”,Edge 已经基于 Chromium 有一段时间了,并且确实启用了项目使用的实验性 Chromium-only API。如果“橙色”是指 Firefox(相对于另一个橙色,Brave),Mozilla's position 是观望...
【解决方案2】:

我认为 FileSystem API 已经死了。当我在 MDN 网络文档中搜索它时,我看到了这些:

此功能是非标准的,不在标准轨道上。不要在面向 Web 的生产站点上使用它:它不适用于每个用户。实现之间也可能存在很大的不兼容性,并且行为可能会在未来发生变化。

另外我也在https://caniuse.com/搜索,结果是:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2014-09-18
    • 2018-08-09
    • 2021-04-03
    • 2011-06-30
    相关资源
    最近更新 更多