未打开 URL 时服务人员未侦听推送事件

Posted

技术标签:

【中文标题】未打开 URL 时服务人员未侦听推送事件【英文标题】:Service worker not listening push event when the URL is not opened 【发布时间】:2018-01-14 02:36:21 【问题描述】:

我想将 service worker 集成到我的 web 应用程序中并发送几乎类似于 Facebook 的推送通知(即使 Faceook 未打开也发送通知)

当https://my-app-url.com 在其中一个选项卡中打开时,我的服务人员甚至推送事件都可以正常工作。来自服务器的任何推送事件都可以完美地将数据发送到 UI。在这种情况下,我可以看到服务人员的状态。它显示“激活并运行”状态。

但是当 URL 没有在任何浏览器选项卡中打开时,Service Worker 不会监听推送事件,甚至 Service Worker 状态显示“激活和停止”。

谁能帮帮我。这是否会将 Service Worker 状态显示为“已激活并已停止”?

【问题讨论】:

【参考方案1】:

查看此documentation 以检查您是否遗漏了什么。

从那里您将能够检查您的工作。

将推送通知添加到 Web 应用程序

你会学到什么

如何为用户订阅和取消订阅推送消息 如何处理传入的推送消息 如何显示通知 如何响应通知点击

您可以查看SO post 了解更多详情。

【讨论】:

以上是关于未打开 URL 时服务人员未侦听推送事件的主要内容,如果未能解决你的问题,请参考以下文章

Chrome 和 Firebase 推送通知服务人员未准备好

React 服务器端渲染事件侦听器未附加

无法安装站点:未检测到匹配的服务人员

无法在“notificationclick”事件中为 chrome 加载 GCM 推送通知的数据 URL

网络推送通知未在 Chrome 中显示

事件上的 C++ 侦听器未使用套接字 io C++ 客户端获取事件