如何以编程方式让用户订阅 Firestore 主题?

How to programmatically subscribe users to Firestore Topics?

背景

我想要一个发送给 HTTP 请求调用的所有用户的通知。最初我使用的是批量写入。但是,现在我们的用户群已经超出了最大批量大小。我发现主题规模更大

问题

我已将推送通知配置为通过带有主题的 FCM 发送。我在创建帐户时已将帐户订阅到“全球”主题。 现在我需要以编程方式将其余用户群添加到该主题。我找不到任何关于如何执行此操作的 Firestore 文档。有什么建议吗?

如果您使用的是节点:

    const firebaseAdmin = require("firebase-admin");
    ...
    
    const messaging = firebaseAdmin.messaging();
    let FCMTokens = [] //registration tokens

    messaging.subscribeToTopic(FCMTokens, "TOPIC_NAME");

通过 http:

1- post 至 https://iid.googleapis.com/iid/v1:batchAdd

2- 作为 headers 发送您的授权(服务器密钥)和 content-type 作为 json

3- 作为 body

{
    "to": "/topics/TOPIC_NAME",
    "registration_tokens": []
}