如何使用 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 的这个例子。
我正在尝试使用 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 的这个例子。