在缺乏OS.File API的情况下,我是否需要放弃Firefox 57+?

时间:2017-10-13 04:01:53

标签: firefox file-io firefox-addon firefox-webextensions

根据mozilla.org上的draft plan,它似乎不能替代具有任意文件系统访问权限的OS.File

我有一个基于Firefox的应用程序需要对非配置文件路径进行统计/读/写文件。该应用程序主要用于离线,但如果它也可以访问网络,则具有优势。

我是否需要离开Firefox,因为他们正在放弃这些传统' API?

我不是一个nodejs粉丝,但看起来像很多的工作,我可以把我的应用程序移植到Electron或类似的。

我有一个Bootstrap风格的插件,可以将特权函数注入应用程序所在的非特权窗口。

OS.File的具体用例是:

  • 用户与代表其订单的页面进行交互
  • 订单中的每个项目代表一个尚未存在或准备复制到客户提供的USB媒体的文件
  • 当用户插入USB媒体时,会通知页面复制功能可用
  • 然后,用户点击“复制”#39;并且页面迭代准备好的'项目
  • Asyncronously,对于每个项目:
    • 确定项目的路径(在NAS上)
    • 复制到USB闪存的速度很慢,因此使用流式复印机(类似于"通过块来复制文件"来自OS.File on-thread examples)将文件复制到已安装的USB介质
    • 每个项目进度条会在复制文件时更新
  • 当'准​​备好'复制订单的一部分,通知页面可以弹出USB媒体
  • 用户点击页面上的按钮以实现媒体弹出,然后在安全移除USB媒体时通知页面

在复制过程中,用户继续与页面交互(排序,搜索)。

1 个答案:

答案 0 :(得分:1)

如果浏览器内集成非常有价值,您希望找到一个在旧版扩展程序消失后仍然有效的解决方案,这听起来像是您可以使用webextensions本机消息传递API [1]。正如其他人所说的那样,来自webextensions的任意文件系统访问(以及检测何时连接可移动存储设备)都不会发生。

[1] https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Native_messaging