跨站点请求和浏览器插件

cross-site requests & browsers addons

我正在尝试使用 "new" WebExtensions 系统开发一个基本的 Firefox 插件。

我愿意

  1. 从网页中提取一些文本(归我所有)
  2. 使用远程网站对其进行评估
  3. post在同一页结果

问题是如何使用插件发出网络请求(第 2 点)。我发现我可以使用 XMLHttpRequest,但是正如我想象的那样,出于安全原因我无法访问远程路径。

那是因为(我猜)javascript 代码在页面内 运行,尽管我认为插件会是...外部的。

当然结果会在页面,但我假设插件可以作为代理来发出此请求。那就是说我不知道​​我应该怎么做。

我不想使用一些奇怪的技巧(比如删除一些安全控制),我想用 "right" 的方式来做。

我也不明白的是,如果插件被绑定到 运行 在它们所针对的页面中。

编辑: 好的,事实证明 chrome 文档实际上比 mozilla 文档更好。要实际使用 XHR 来跨站点请求,您必须在清单中添加一行代码。

{...
"permissions": [
    "http://random.com/"
    ],
}..

我仍然不确定这是否是实现我的目标的正确方法。

要实际使用 XHR 来跨站点请求,您必须在清单中添加一行代码。

{...
"permissions": [
    "http://random.com/"
    ],
}