【问题标题】:Chrome Extensions - onRequest/sendRequest vs onMessage/sendMessage [duplicate]Chrome 扩展 - onRequest/sendRequest 与 onMessage/sendMessage [重复]
【发布时间】:2012-07-04 21:57:18
【问题描述】:

查看Chrome Extension center中的页面链接的this sample extension,我看到他们使用了

chrome.extension.onRequest.addListener(onRequest);

在 background.js 页面中以监听 contentscript.js 和

  chrome.extension.sendRequest({}, function(response) {});

在 contentscript.js 中以便与 background.js 页面对话。

但我在网络上的任何地方都找不到这些函数的文档,而 Google 的 Message Passing guide 只提到了

chrome.extension.sendMessage(...)

发送,并且

chrome.extension.onMessage.addListener(...)

听。

我应该使用哪些功能? sendRequest/onRequest 过时了吗? Google 的开发指南是否仍然是最新的?

【问题讨论】:

    标签: javascript google-chrome google-chrome-extension


    【解决方案1】:

    似乎sendMessage 优于sendRequest,后者将被弃用:http://codereview.chromium.org/9965005/

    【讨论】:

    • 终于从 chrome-21 中删除了。
    • 谢谢。我希望谷歌提到这一点.. 唉,stackoverflow 再次来救援!
    • 我认为可能是这种情况。不幸的是,这个已弃用的 API 调用仍在 chrome 扩展“下载”示例中使用。
    • for 在 chrome.extension 中,我们仍然可以看到 onMessage/onRequest 和 sendMessage/sendRequest 方法。为什么chrome不直接删除。
    【解决方案2】:

    还要注意 API 路径的变化

    • chrome.extension.onRequest
    • chrome.extension.sendRequest

    • chrome.runtime.onMessage
    • chrome.runtime.sendMessage

    将使您免于对原因感到沮丧,例如chrome.extension.onMessage 不工作!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多