带有 Firebase 通知的 Flutter Web - subscribeToTopic

Dan*_*ara 3 javascript firebase flutter firebase-cloud-messaging flutter-web

我想在我的 flutter web 应用程序中接收 firebase 通知。我知道 firebase_messaging 包不可用于网络。但我已经管理配置我的应用程序以获取令牌,当网络应用程序位于后台时接收和显示消息,以及当应用程序位于前台时接收(但尚未显示消息)。

我通过创建 JavaScript(和服务工作线程)来实现这一点,如下所述:

https://medium.com/@rody.davis.jr/how-to-send-push-notifications-on-flutter-web-fcm-b3e64f1e2b76

https://firebase.google.com/docs/cloud-messaging/js/client

https://firebase.google.com/docs/cloud-messaging/js/receive

问题是,到目前为止,我只能将消息发送到“特定令牌”或“每个人”,而我需要将消息发送到“特定主题”。

使用 JS 向特定主题发送云消息的文档继续如下: https: //firebase.google.com/docs/cloud-messaging/js/topic-messaging

但问题是,这部分代码不再像以前那样放在index.html文件中。(可以是node.js、java、python、Go 或C#)

我不知道如何在我的 flutter web 应用程序中实现它。有可能吗?

这是我想添加到我的 flutter web 应用程序中的部分:

订阅主题代码

Fra*_*len 7

Firebase Cloud Messaging 的 JavaScript SDK 不支持订阅主题,不幸的是,Flutter for web 也没有/不会有它。

这意味着 Web 应用程序无法像 Android 和 iOS 应用程序那样自行订阅主题。相反,对于 Web 应用程序,您必须使用服务器端 SDK 来订阅主题。

所以你需要:

  1. 创建使用管理 SDK 之一或 REST API 的自定义服务器端 API,将特定 FCM 设备令牌订阅到特定主题。此代码需要在受信任的环境中运行,例如您的开发计算机、您控制的服务器或 Cloud Functions。
  2. 然后,您可以从 Flutter 应用程序中调用此自定义 API。

另请参阅: