Javascript 跨站点请求&;浏览器插件

Javascript 跨站点请求&;浏览器插件,javascript,ajax,cross-domain,firefox-addon-webextensions,Javascript,Ajax,Cross Domain,Firefox Addon Webextensions,我正在尝试用“新”的WebExtensions系统开发一个基本的Firefox插件 我想 从网页中提取一些文本(不是我所有的) 使用远程网站进行评估 在同一页中发布结果 问题是如何使用插件发出web请求(第2点)。我发现我可以使用XMLHttpRequest,但由于安全原因,我无法访问远程路径 这是因为(我猜)javascript代码是在页面内部运行的,尽管我原以为加载项是。。。外部的 当然,结果会在页面内,但我假设加载项可以作为代理发出此请求。也就是说,我不知道该怎么做,该怎么做 我不想使用

我正在尝试用“新”的WebExtensions系统开发一个基本的Firefox插件

我想

  • 从网页中提取一些文本(不是我所有的)
  • 使用远程网站进行评估
  • 在同一页中发布结果

  • 问题是如何使用插件发出web请求(第2点)。我发现我可以使用XMLHttpRequest,但由于安全原因,我无法访问远程路径

    这是因为(我猜)javascript代码是在页面内部运行的,尽管我原以为加载项是。。。外部的

    当然,结果会在页面内,但我假设加载项可以作为代理发出此请求。也就是说,我不知道该怎么做,该怎么做

    我不想使用一些奇怪的把戏(比如移除一些安全控制),我想用“正确”的方式来做

    我也不明白的是,这些插件是否被限制在它们为之设计的页面内运行

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

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

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

    要真正使用XHR跨站点请求,您必须在清单中添加一行代码

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