这是我第一次使用Firebase。我正在将Firebase Cloud Message与节点.js服务器和Android客户端集成。当我将消息推送到服务器时,响应是消息已成功发送到 Firebase 服务器。
但是当我转到Firebase控制台时,我在那里看不到我的消息,而且我的Android设备也没有收到该消息。我正在将消息作为主题发送,安卓设备也订阅了这些主题。
如果有人可以共享链接以查看服务器上的消息或建议我错过的内容,我将很高兴。
下面是一个示例响应:发送给 Firebase 进行传递的消息,响应: { "name": "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 进行投放的消息,响应:{ "name": "projects/my-project-id/messages/7660010658785245660" }
表示您的 Firebase SDK 已成功发送消息。(即凭据配置正确且 SDK 初始化成功。
在代码中,你已定义 data(有效负载是可选的,请参阅此处的文档:https://firebase.google.com/docs/cloud-messaging/concept-options#notification-messages-with-optional-data-payload(,若要显示通知消息,需要添加通知对象。
只需在message
对象中添加以下对象,它应该可以工作:
"notification":{
"title":"Portugal vs. Denmark",
"body":"great match!"
},