Chrome 扩展后台脚本如何与网页服务工作者通信?
Posted
技术标签:
【中文标题】Chrome 扩展后台脚本如何与网页服务工作者通信?【英文标题】:How can Chrome extension background script communicate with web page service worker? 【发布时间】:2016-09-23 14:25:54 【问题描述】:我们的 webapp 注册了一个 service worker。我们还有一个 Chrome 扩展程序。我们需要的是在不打开 webapp 的情况下从 service worker 向扩展发送消息。这样做的正确方法是什么?
我们当前的解决方案是在服务工作者中请求一些 URL,并使用 webRequest
- chrome.webRequest.onBeforeRequest.addListener
在扩展程序的后台脚本中捕获它。它有效,但看起来非常不标准。
【问题讨论】:
唉,还没有:crbug.com/452942 和 crbug.com/545535 马丁,我也需要这样做。您能否发布一些解决方案的示例代码? @MichaelUpdike gist.github.com/zdila/ba6c0c1e0be5caafbc1d5bb4832f7d75 您好,有新的解决方案吗?我想将数据从 firebase-messaging-sw.js 发送到 manifest v3 service worker 以设置标记文本。普通服务人员没有设置可用的徽章文本 API。 【参考方案1】:(来自 wOxxOm 的评论,因为他讨厌在 cmets 以外的任何地方回答)
您的解决方案与任何解决方案一样好 - 在添加更直接的支持之前,根据 this feature request。
【讨论】:
以上是关于Chrome 扩展后台脚本如何与网页服务工作者通信?的主要内容,如果未能解决你的问题,请参考以下文章
chrome 扩展的浏览器动作、后台脚本和内容脚本之间通信的上下文和方法?
chrome 扩展 mv3 - 模块化服务工作者 js 文件