我正在做一个项目,当用户更改数据时,该项目应显示一条有关您的数据更改的通知。为此,我使用了云消息传递和firebase的功能,但是问题是,每当我更改特定用户的数据时,通知不仅会传递给每一个设备,更会通知每台设备,我希望当我更改特定用户的数据时通知仅应发送而不是所有人。请帮忙!
这是Firebase云功能代码
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.helloWorld = functions.database.ref('reports/{id}').onWrite(evt => {
const payload = {
notification:{
title : 'Request Reviewed',
body : 'Your Request has been reviewed please click to see the changes',
badge : '1',
sound : 'default'
}
};
return admin.database().ref('reports').once('value').then(allToken => {
if(allToken.val()){
console.log('token available');
const token = Object.keys(allToken.val());
return admin.messaging().sendToDevice(token,payload);
}else{
console.log('No token available');
}
});
});
当我更改数据中的任何内容时,通知会发送到所有设备,我不希望当我更改特定用户的数据库中的数据时,通知仅应发送给该特定用户。