这是我第一次使用Firebase。我正在将Firebase Cloud Message与node.js服务器和Android客户端集成。当我将消息推送到服务器时,响应是消息已成功发送到Firebase服务器。
但是,当我转到firebase控制台时,在那儿看不到我的消息,而且我的android设备也未收到该消息。我正在将消息作为主题发送,并且android设备也已订阅了主题。
如果有人可以共享链接以查看服务器上的消息或提出我遗漏的内容,我将感到非常高兴。
以下是示例响应:
已发送到Firebase进行传递的邮件,响应:
{
“名称”:“projects/my-project-id/messages/7660010658785245660”
}
下面是我用来推送到服务器的代码
let admin = require('firebase-admin'),
serviceAccount = require('the link to my service account is here'),
fcmObj = {};
admin.initializeApp({
credential: admin.credential.cert(serviceAccount)
});
fcmObj.sendMsg = function(){
let options = {
priority: "high",
timeToLive: 60 * 60 *24
},
message = {
data: {
content: 'Hello.. we are testing our api and fcm.',
sender: 'From Server'
},
topic: "News"
};
// Send a message to devices subscribed to the provided topic.
admin.messaging().send(message, options)
.then((response) => {
// Response is a message ID string.
console.log('Successfully sent message:', JSON.stringify(response));
})
.catch((error) => {
console.log('Error sending message:', error);
});
}
module.exports = fcmObj;
最佳答案
表示您的Firebase SDK正在成功发送消息。 (即凭据配置正确,SDK已成功初始化。)
在代码中,您已经定义了数据(有效载荷是可选的,请参见此处的文档:https://firebase.google.com/docs/cloud-messaging/concept-options#notification-messages-with-optional-data-payload),以显示需要添加通知对象的通知消息。
只需在您的message
对象中添加以下对象,它便可以正常工作:
"notification":{
"title":"Portugal vs. Denmark",
"body":"great match!"
},
关于android - 在Firebase控制台上查看已发送的消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51014614/