如何发送消息到多个Android设备在Node js中使用FCM?

我试图发送消息到单个设备,即单个注册ID,它工作正常,但当试图添加多个注册ID时,它会给出“InvalidServerResponse”错误。 例如适用于regTokens ='regId1'; 但不适用于regTokens = ['regId1','regId2'];

var FCM = require('fcm-node'); // Add API Key var fcm = new FCM('<server-key>'); exports.sendMessage = function (regTokens, messageToSend, callback) { var message = { //this may vary according to the message type (single recipient, multicast, topic, et cetera) to: regTokens, data: { ar_message: messageToSend } }; fcm.send(message, function(err, response){ if (err) { console.log("Something has gone wrong!",err); } else { console.log("Successfully sent with response: ", response); } callback(err, 'Success'); }); } 

发送到指定的多个注册令牌时,您必须使用registration_ids而不是to 。 从文档(重点是我的):

此参数指定多点传送消息的接收方,即发送给多个注册令牌的消息。

该值应该是发送组播消息的注册令牌数组 。 数组必须包含至less1个和至多1000个注册标记。 要将消息发送到单个设备,请使用to参数。

多播消息只能使用HTTP JSON格式。

 var message = { registration_ids: regTokens, data: { ar_message: messageToSend } };