我正在构建一个Cloud Functions发送通知,该通知从实时数据库获取用户ID,并使用其令牌将通知发送到特定设备。 我无法从Firebase实时数据库中获取用户ID和令牌的问题
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
exports.sendAdminNotification =
functions.database.ref('/types/{userId}/token').onWrite((change, context) => {
const userId = context.params.val
const token = change.before.val()
console.log("data",token)
const payload = {
data: {
data_type: "direct_message",
title: "Alert" ,
message: "your animal is out of the zone please check him",
message_id: "2",
}
};
return admin.messaging().sendToDevice(token, payload)
});
答案 0 :(得分:0)
您正在尝试从使用以下代码写入的数据的路径中读取用户ID:
functions.database.ref('/types/{userId}/token').onWrite((change, context) => {
const userId = context.params.val
要从路径中获取参数,您需要使用context.path.theNameOfTheParameter
。因此,在您的情况下为context.params.userId
。