我正在尝试使用“新”WebExtensions 系统开发一个基本的 Firefox 插件。
我想
- 从网页中提取一些文本(不属于我)
- 使用远程网站对其进行评估
- 在同一页面发布结果
问题是如何使用插件发出 Web 请求(第 2 点)。我发现我可以使用 XMLHttpRequest,但出于安全原因,我无法访问远程路径。
那是因为(我猜)javascript 代码是在页面内运行的,尽管我曾认为插件会是......外部的。
当然结果会在页面内,但我假设插件可以作为代理来发出这个请求。那就是说我不知道我应该怎么做。
我不想使用一些奇怪的技巧(比如删除一些安全控制),我想以“正确”的方式来做。
我也不明白的是,插件是否必须在它们所针对的页面内运行。
编辑:好的,事实证明 chrome 文档实际上比 mozilla 更好。要实际使用 XHR 跨站点请求,您必须在清单中添加额外的代码行。
{...
"permissions": [
"http://random.com/"
],
}..
我仍然不确定这是否是完成我的目标的正确方法。