获取文件时 firefox ext 中的安全错误

Security error in firefox ext while fetching a file

在 background.js 文件中使用以下代码获取文件内容时:

function readFile(filename) {
    let response = fetch(`file:///${filename}`);
    console.log(response);
}

我收到以下错误:

Security Error: Content at moz-extension://86d386b7-2904-441f-8dbe-47f0af9b6bfb/_generated_background_page.html may not load or link to file:///C:/Users/rando/Downloads/jest-26.6.1.zip.
TypeError: NetworkError when attempting to fetch resource.

我的清单文件如下所示:

  "permissions": [
    "webNavigation",
    "webRequest",
    "webRequestBlocking",
    "cookies",
    "tabs",
    "http://*/*",
    "https://*/*",
    "ws://*/*",
    "wss://*/*",
    "storage",
    "downloads",
    "sessions",
    "file://*/*"
  ],
  "background": {
    "scripts": [
      "app/scripts/background.js"
    ],
    "persistent": true
  },

如何解决此错误并使用 background.js 文件获取文件内容?

出于安全原因,自 Firefox 57 以来已阻止对本地文件系统 file:/// 的扩展访问。

扩展程序可以使用 input type="file" 在用户单击时启动文件选择器。

扩展也可以:

  • 读取扩展中打包的文件
  • 通过Native messaging
  • 与本地计算机上的软件通信
  • 通过 HTTP/s 获取文件,如果本地主机有服务器 运行