【发布时间】:2019-08-06 18:32:23
【问题描述】:
我正在尝试向用户发送通知,但由于某种原因我遇到了错误。 错误是“函数返回未定义、预期的 Promise 或值”。
我不明白这行是什么意思,希望你们看看我的代码并告诉我我哪里错了。
代码
exports.sendNotification = functions.database.ref('/likes/{videoId}/{currentUser}').onWrite(event =>{
console.log("Start send like notification");
const model = event.data.val();
let ownerVideoUserId = model.userVideoID;
let username = model.userName;
if(username == ""){
username = "Somebody";
}
console.log("model notifi: ",model);
console.log("userVideoID notifi: ",ownerVideoUserId);
console.log("username notifi: ",username);
let reference = admin.database().ref("/users/" + ownerVideoUserId);
reference.once('value').then(snap => {
//get the token
let token = snap.child('token').val();
console.log("user token: ",token);
const payload = {
data: {
title: "Talent",
message: username + " liked your video",
}
}
return admin.messaging().sendToDevice(token,payload).then(function(res){
console.log("Successfully sent message:", res);
}).catch(function(error) {
console.log("Error sending message:", error);
});
})
});
你能看出我的错误吗?
编辑 export.sendCommentNotification = functions.database.ref('genresComments/{genre}/{videoId}/{userId}').onWrite(event =>{ console.log("开始发送评论通知"); 常量模型 = event.data.val(); 让 ownerVideoUserId = model.ownerVideoID; 让用户名 = model.userName;
if(username == "")
username = "Somebody";
console.log("model: ",model);
console.log("userVideoID: ",ownerVideoUserId);
console.log("username: ",username);
let reference = admin.database().ref("/users/" + ownerVideoUserId);
return reference.once('value').then(snap => {
//get the token
let token = snap.child('token').val();
console.log("user token: ",token);
const payload = {
data: {
title: "Talent",
message: username + " comment your post",
}
}
return admin.messaging().sendToDevice(token,payload).then(function(res){
console.log("Successfully sent message:", res);
}).catch(function(error) {
console.log("Error sending message:", error);
});
}).catch(function(error){
console.log("Error with the reference:",error);
}).then(()=>{
console.log('notification');
});
});
【问题讨论】:
标签: javascript firebase firebase-cloud-messaging google-cloud-functions