var payload = {
notification: {
title: "This is a Notification",
body: "This is the body of the notification message.",
},
};
var options = {
priority: "high",
};
var registrationToken ="your device token";
admin
.messaging()
.sendToDevice(registrationToken, payload, options)
.then(function (response) {
console.log("Successfully sent message:", response);
})
.catch(function (error) {
console.log("Error sending message:", error);
});
5条答案
按热度按时间rta7y2nd1#
为了解决这个问题,我采取了以下步骤:
1.打开Google云平台 Jmeter 盘
1.转到API和服务
1.启用API和服务
1.搜索云消息
1.打开云消息传递和Firebase云消息传递API。
vc9ivgsu2#
我刚刚遇到这个问题,对我来说,这是因为我使用了一个模拟器。由模拟器生成的FCM令牌对firebase云消息无效,它抛出了这个错误。
我把我的
admin.messaging().sendToDevice()
放到一个try catch
中,它工作得很好。我不知道是只向有效令牌发送通知,还是完全忽略所有令牌
62o28rlo3#
下载新的私钥并删除旧的私钥!
axzmvihb4#
默认情况下,Firebase使用Firebase云消息传递API(V1),因此您需要使用此API而不是旧版API
对于Firebase云消息传递API(V1):
对于云消息API(传统)1.首先转到Google云平台 Jmeter 板并启用云消息服务2.然后您可以像这样使用:
建议使用Firebase云消息传递API(V1),而不是云消息传递API(旧版)
iqih9akk5#
在我的例子中,按照Abhimanyu的解决方案生成一个新的密钥仍然不能解决问题。
经过5个小时的挖掘,我发现根本原因是谷歌没有为我的项目激活这个API!!!
在我激活云消息传送权限后,它工作。