【问题标题】:Send HTTP Request onClick on ActionButton - Firefox addon在 ActionButton 上发送 HTTP 请求 - Firefox 插件
【发布时间】:2014-05-14 14:17:06
【问题描述】:

我的结果是什么?我正在创建一个插件,我想在单击 ActionButton 时发送一个 HTTP 请求。将传输到服务器的数据包括选项卡的 URL 和页面的内容。

我尝试创建一条日志消息并从控制台(侦听器)获取它。事实证明这根本行不通。其次,我尝试在单击按钮时将 (pageMod) contentScript 注入网站。它也没有那么好用。代码被执行多次而不是一次。

代码:main.js

var button = buttons.ActionButton({
 id: "bookmark-link",
 label: "Bookmark this website",
 icon: {
   "16": "./status-bar.png",
   "32": "./toolbar-large.png",
   "64": "./toolbar-large.png"
 },
 onClick: function() {

     log("triggered!"); // I need to make the Ajax GET request here

 }

});

这个问题让我彻夜难眠,我找不到任何有效的解决方案。所以我试着在这里寻求帮助。感谢您的宝贵时间!

谢谢。

【问题讨论】:

  • 你看过Request module吗?
  • 是的,我也试过了。谢谢
  • 我们能看到代码吗?哪里出错了?
  • "代码被执行多次而不是一次。"您可以通过在 pageMod 构造函数中添加 attachTo: ["top"] 来解决此问题。

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


【解决方案1】:

我建议在您的 onClick 处理程序中使用 request 模块。

如果您真的想使用内容脚本,请执行以下操作:

onClick: function() {
    require('sdk/tabs').activeTab.attach({
      contentScriptFile: require('sdk/self').data.url('request-maker.js'),
    })
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-28
    • 1970-01-01
    相关资源
    最近更新 更多