【问题标题】:why my firefox add-on cannot do Request为什么我的 Firefox 插件不能请求
【发布时间】:2014-05-03 14:56:17
【问题描述】:

我的插件工作正常,没有错误,但是如果在我的插件脚本 Main.js 中添加波纹管代码,那么我的扩展将根本无法工作。

为什么?

我该怎么办?

var Request = require("sdk/request").Request;
var quijote = Request({
  url: "http://www.latin1files.org/",
  onComplete: function (response) {
    console.log(response.text);
  }
});

quijote.get();

插件:

https://addons.cdn.mozilla.net/_files/478037/proxylist-initial.rev19-fx.xpi

所以如果我想使用请求或计时器,插件将无法正常工作。如何解决这个问题?

我认为问题出在设置文件中,可能在 bootstrap.js 或harness-options.json 中,或者必须初始化的地方,但我对 firefox 插件 sdk 了解不多。我知道上面的代码必须有效,但我需要包含或声明一些允许我使用请求的东西。

【问题讨论】:

  • “它不工作”是什么意思?整个扩展停止工作或onComplete 没有被执行?如果是后者,可能是因为http://www.latin1files.org 没有返回任何内容。
  • @willlma 整个扩展停止工作
  • 代码看起来很合理,所以真正的问题可能在于您未发布的其余代码或更确切地说是两者的交互。请提供一个可重现的例子。
  • @nmaier 我认为问题出在设置文件中,可能在 bootstrap.js 中,或者必须初始化的地方,但我对 firefox 插件 sdk 了解不多。我知道上面的代码必须有效,但我需要包含或声明一些允许我使用 Request.
  • 或harness-options.json

标签: javascript firefox firefox-addon firefox-addon-sdk


【解决方案1】:

必须在harness-options.json 中声明

【讨论】:

    【解决方案2】:

    您的 /resources/addon-sdk/lib/sdk/ 文件夹中没有 request.js 文件。正如您在 the announcement of SDK 1.15 的 cmets 中所见,不再需要将 SDK 模块与扩展程序捆绑在一起(从 FF21 开始)。

    【讨论】:

    • 但即使我在该文件夹中添加 request.js,它也不起作用。
    • 您是否正在尝试制作纯 addon-sdk 扩展?你写了 bootstrap.js 吗?文件结构与我开始制作扩展程序以来看到的完全不同。如果你只是想制作一个普通的附加 sdk 扩展,那么下载并安装newest sdk,用cfx init 创建一个新的扩展,然后用你自己的替换生成的main.js 文件。
    猜你喜欢
    • 2013-10-17
    • 2021-03-14
    • 2011-04-22
    • 1970-01-01
    • 2011-05-05
    • 2020-09-21
    • 1970-01-01
    • 1970-01-01
    • 2019-02-07
    相关资源
    最近更新 更多