如何使用 Admin SDK 为数据库触发器设置 firebase FCM

How to set up firebase FCM with Admin SDK for database triggers

我正在尝试使用 Firebase Admin SDK 和 Node js 为数据库触发器设置 FCM 通知。根据我在文档中阅读的内容,我知道您需要设备通知密钥才能发送通知。但是,服务器应该如何获取设备通知密钥呢?这是应该从客户端传递到服务器的东西吗?或者这是我可以使用授权 ID 从我的服务器中查找的内容吗?

由于 FCM 应该在 Firebase 数据库收到更新时触发,我不确定如何请求负责该更新的设备通知密钥。

谢谢

您需要将所有令牌存储在数据库中,然后您的发件人代码可以从中读取它们。

如果您在 setting up your app for receiving message 上查看 Firebase 文档中的示例代码,您会看到如下代码:

public void onNewToken(String token) {
    Log.d(TAG, "Refreshed token: " + token);

    // If you want to send messages to this application instance or
    // manage this apps subscriptions on the server side, send the
    // FCM registration token to your app server.
    sendRegistrationToServer(token);
}

sendRegistrationToServer 的调用是您可以执行的操作的一个示例:它是一个将令牌发送到您的服务器的函数,然后可能将其存储在数据库中。

如果你再看看 sending messages to users when data is written to a database, you'll see that it reads the tokens from the database, uses them to send messages to all relevant tokens, and then cleans up tokens that have expired 的这个例子。