在 Chrome 扩展中,后台页面可以与 page_action 弹出窗口对话吗

发布于 2024-11-28 03:23:07 字数 601 浏览 0 评论 0原文

内容脚本可以使用 与后台页面对话

chrome.extension.sendRequest

后台页面可以使用 与内容脚本对话

chrome.tabs.getSelected(null, function(tab) {
  chrome.tabs.sendRequest(tab.id, {}, function(response) {
      // do something with response here
  })
})

页面动作弹出窗口可以使用 与后台页面对话

chrome.extension.sendRequest

那么,有没有办法背景页面与弹出窗口对话?

用例是

  • 弹出窗口打开并希望从页面获取一些信息

  • 因此它向后台页面发送请求

  • 后台页面现在向内容脚本发送请求

  • ,内容脚本将响应发送回后台页面。

  • 所以现在后台脚本需要将其发送到弹出窗口!!

    这是怎么发生的?

It is possible for a content script to talk to the background page using

chrome.extension.sendRequest

It is possible for the background page to talk to the content script using

chrome.tabs.getSelected(null, function(tab) {
  chrome.tabs.sendRequest(tab.id, {}, function(response) {
      // do something with response here
  })
})

It is possible for a page_action popup to talk to the background page using

chrome.extension.sendRequest

So, is there a way for the background page to talk to the popup?

The use case is one where

  • the popup is open and wants to get some information from the page

  • so it sends a request to the background page

  • the background page now sends a request to the content script

  • and the content script sends a response back to the background page.

  • So now the background script needs to send this to the popup !!

    How does that happen?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

潜移默化 2024-12-05 03:23:07

只要弹出窗口保持打开状态,您就可以使用chrome.extension.sendRequest

但是看看您的工作流程,为什么不直接跳过后台页面并直接从弹出窗口向内容脚本发送请求呢?然后您可以使用 sendResponse() 将数据返回到弹出窗口。

You can, using chrome.extension.sendRequest, as long as popup remains open.

But looking at your workflow, why not just skip background page and send request to a content script directly from a popup? Then you can just use sendResponse() to return the data back to popup.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文