从服务器向 Chrome 扩展程序发送推送通知的最佳方式?

ekc*_*one 1 google-chrome websocket google-chrome-extension firebase-cloud-messaging

我正在为分类广告网站制作 chrome 扩展程序。使用 chrome 扩展程序,用户将能够从他们观看的类别/搜索查询中获取最新列表。

我已经在使用 websocket 服务器向用户发送通知,但是这样我必须始终为每个用户打开一个套接字连接。

我的第二种方法是使用Firebase,但这只会在用户单击图标时运行通知(如我所见),我宁愿从我的服务器完成此操作

__

是否有其他可能的解决方案可以在用户不点击图标的情况下向 Chrome 扩展程序发送通知?

Xan*_*Xan 5

您可以使用 Google 的推送基础架构吗?与支持 Android 推送通知的功能相同吗?谷歌云消息传递。

注意:Firebase Cloud Messaging 是 GCM 的升级版本;虽然是真的,但 Chrome 并没有像 GCM 那样原生支持它。

chrome.gcmAPI是与之配合使用的那个。有关详细信息,请参阅其文档以及GCM 文档

甚至还有一个教程:在 Chrome 上实现 GCM 客户端

但简而言之,您的扩展程序将注册为 GCM 的订阅者,将订阅 ID 传递给服务器,然后应用程序服务器使用这些 ID 将消息发布到 GCM。

如果您愿意使用通用 JS SDK 实现 Firebase,您也应该能够使用它;“这只会在用户单击图标时运行通知”听起来很荒谬?背景页面应该能够让监听器保持活动状态并做出反应,这可能是您的系统现在的工作方式。我仍然会推荐一个原生 API,它应该与事件页面兼容。