Firebase Cloud Messaging via Cloud Functions via Http reques



尝试使用 Firebase 云消息传递为我的 android 应用程序实现消息传递过程,我遇到了一些限制,因为我没有任何服务器,也不打算拥有任何类型的服务器。

我打算做什么: - 使用OKhttp创建所有需要的HTTP请求表单。 - 将所需的 HTTP 请求发送到我的云函数 - 这些函数将从 Firestore 获取 NEEDE 数据并响应请求,同时实际向主题发送云消息。

这是我找到的实现自己的 REST API 的唯一方法,因为我无法在我的 android 客户端应用程序中使用管理员 SDK,并且没有任何处理服务器。

有没有做同样的事情的例子和教程?欢迎任何建议。

您确实不需要服务器来实现功能需求。正如您在问题中提到的,您可以很好地使用云功能(一种无服务的解决方案(。

当您想要发送 Firebase 云消息通知时,您可以:

  1. 将通知的内容写入新的 Firestore 文档(到特定文档集合中(。在这里,与实现HTTP云函数来发送数据相比,它的优势在于您可以保留请求的历史记录,并且由于您将使用适用于Firestore的Android SDK,因此编码会更容易一些。
  2. 设置在此集合中创建新文档并发送通知时触发的云函数。

有一个官方示例云函数可以做到这一点,请参阅 https://github.com/firebase/functions-samples/tree/Node-8/fcm-notifications。该函数的代码位于 https://github.com/firebase/functions-samples/blob/Node-8/fcm-notifications/functions/index.js。

在您的情况下,您将按如下方式触发云函数:

exports.sendNotification = functions.database.ref('/notificationsRequests/{requestUid}')
.onCreate(async (snap, context) => {})

见 https://firebase.google.com/docs/functions/firestore-events


请注意,您会在SO上找到很多涵盖此主题的问题和答案:https://stackoverflow.com/search?q=firestore+send+notifications

经过一些研究,我发现Firebase提供了我正在寻找的命名可调用函数

https://firebase.google.com/docs/functions/callable

通过这种方式,可以交换通知,而无需实际通过任何数据库传输。希望这可以帮助某人。

相关内容

  • 没有找到相关文章

最新更新