Я изучаю nodeJS, и я написал этот простой фрагмент кода:
user_logged.forEach(function (element) {
db.collection("users").find({username: element.username}).toArray(function (err, users) {
if (((new Date() - users[0].lastAction) / 1000) >= 60) {
//Expired session without logout
/* Delete user and gain access to the incoming */
db.collection("user_logged").deleteOne({username: element.username});
req.session.logged = true;
req.session.username = req.body.username;
req.session.type = documents[0].type;
// var search = {username: req.session.username};
// var newvalue = {$set: {lastAction: new Date()}};
// db.collection("users").updateOne(search, newvalue, function (err, curs2) {
// if (err) throw err;
// });
console.log(req.session.username);
res.end({url: "http://localhost:3000/commerce"});
}else{
console.log("time passed: " + (new Date() - users[0].lastAction) / 1000);
}
});
});
console.log("after end of cycle ");
res.json({ error: 'tooManyUsers' });
Я хотел бы дождаться конца foreach
, прежде чем делать res.json({ error: 'tooManyUsers' });
Как можноЯ использую обратный вызов в этой ситуации?