我正在开发一个应用程序,当我的工作地点的用户可以用来在应用程序关闭时通知其他办公室。当发生这种情况时,用户按下应用程序中的按钮,使用标记" red"更新Firebase数据库。更新后,我希望使用云功能向手机发出通知。该应用和Firebase运行良好,但我想知道应用程序的状态已更新。我尝试了event.data.key和event.params.apps,但两者都返回undefined。我究竟做错了什么?这里是数据库结构(不允许在SO上发布图片)和云功能代码: 这是数据库树的图片:
const functions = require('firebase-functions');
// The Firebase Admin SDK to access the Firebase Realtime Database.
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.sendAppUpdate = functions.database.instance('medelsappen').ref('/apps/{appar}').onUpdate(event => {
//Hämtar status för programmet (red/green)
const snapshot = event.data.val();
var appStatus = String(snapshot.status);
var appData = String(snapshot.key);
//Hämtar vilket program som uppdaterats
var app = event.params.appar;
var app1 = String(app);
console.log("Aktuell app: ", app1, ", Status; ", appStatus, "appData: ", appData);
var mess = (app1 + " , ny status: " + appStatus);
var topic = "apps";
var payload = {
notification: {
title: "Programstatus uppdaterad",
body: (mess)
}
};
var options = {
priority: "high",
timeToLive: 60 * 60 * 24
};
admin.messaging().sendToTopic(topic, payload, options)
.then(function(response) {
console.log("Lyckades skicka meddelande:", response);
})
.catch(function(error) {
console.log("Fel vid försök att skicka meddelande:", error);
});
}
);
那时我想知道的是什么;如何获取{appar}参数并将其包含在通知中?目前它只是说" undefined"对于变量 app1 和 appData 。