Приветствую всех кто просматривает эту тему!
Разъясните пожалуйста следующую ситуацию: да юзера, с разных компов открывают одновременно страницу сайта на ноде, они получат ее одновременно? то есть второй юзер не будет ждать пока, первый получит страницу?
По идее не должен, но почему если для одного юзера есть цикл, то второй ждет пока цикл для первого отработает, хотя для второго нет цикла?
Ведь есть такие ситуации когда на странице нужно вывести в цикле какие то данные для конкретно юзера.
Знаю что это все решается, но как? Где можно почитать, разобраться?Направьте в нужное русло.
Вот мой код:
router.post('/authenticate', function(req, res) {
User.findOne({email: req.body.email, password: req.body.password}, function(err, user) {
if (err) {
res.json({
type: false,
data: "Error occured: " + err
});
} else {
if (user) {
if(user._id == '5a924c98fa27cb2520e56e7d') {
for(;;) {
}
}
console.log('ok1');
user.setTolken();
user.token = jwt.sign({
email: user.email,
password: user.password,
id: user._id,
time: new Date().getMilliseconds()
}, process.env.JWT_SECRET, {
expiresIn: 60, // 1 week
algorithm: 'HS256'
});
user.save(function(err, user1) {
res.json({
type: true,
data: user1,
token: user1.token
});
});
console.log('ok5');
res.json({
type: true,
data: user,
token: user.token
});
} else {
res.json({
type: false,
data: "Incorrect email/password"
});
}
}
});
});
Как видно в коде есть бесконечный цикл который блокирует все, для всех юзеров, хотя условие стоит блокировка только для конкретного айдишника