我在Node.js
和MongoDB
API中有问题
我的代码段: https://codeshare.io/5OzbW7
由于MongoDB
是NoSQL
,因此我们不能像SQL那样使用关系查询,因此,我必须从所有业务中抢购业务,然后为该业务找到用户,然后必须检查用户角色(根据逻辑),然后我可以找到设备信息,在其中我获得了用于向移动设备和网络发送推送通知的设备令牌,其中device_type
是网络还是移动设备。
这样一来,我可以发送推送通知,现在出现问题时,我从客户端获取其他信息,就像我们需要将通知存储在架构中一样。因此,在发送推送通知后,我必须将通知存储到一个架构中。更新我的代码以存储该通知时,有些通知已存储,有些则没有,我需要知道情况(代码结构或数据结构)有什么问题。
我知道我必须像RDBMS
一样管理数据结构。如果我对数据结构有误,请按照MongoDB
结构用适当的结构启发我,如果结构没有问题,请向我介绍代码结构。
答案 0 :(得分:0)
问题出在您的代码之内
let count = 0;
tokens.forEach(function (to) {
let message = {
to: to,
notification: {
title: varConst.APP_NAME,
body: notification
},
data: payload
};
fcmWeb.send(message, function (err, response) {
if (err) {
console.log("Something has gone wrong!");
} else {
console.log("Successfully sent with response: ", response);
}
count++;
if (count == tokens.length) {
callback("Send All");
}
});
});
在上面的代码块中,无需使用forEach即可,只需提供注册ID的数组即可,剩下的部分由fcm负责。
let message = {
registration_ids:["eJ8-S5jddyI:APA91bG1jmJBVEtB04","eJ8-S5jddyI:APA91bG1jmJBVEtB04"],
notification: {
title: varConst.APP_NAME,
body: notification
},
data: payload
};