Коллеги, доброго времени суток, столкнулся с такой проблемой, не могу понять от куда ноги у нее растут, в общем суть такая:
Обычный сайт, ничего специфического, несколько страниц + авторизация -> личный кабинет. Все работает на ноде + express. Заметил не давно такую штуку, после авторизации в личном кабинете, если сделать несколько запросов, например перезагрузку или посты отправлять, статус запроса в браузере становится pending и ajax запрос не заканчивается, т.е. данные на сервер приходит, но вот ответ нода не выдает. Сижу понять не могу в чем проблема и почему так происходит первый раз с этим столкнулся, вот пример кода роутера:
exports.get = async (req, res, next) => {
let user = req.session.user;
if (user) {
let section = req.params.section;
logger.write('info', `[admin][user:${user.email}][section:${section}][message: render admins ${(section) ? section : 'main'} section]`);
let counter = {};
let balance = await bModel.instance.get();
counter.persons = await pModel.instance.getCountPersonas();
counter.orders = await oModel.instance.getCountOrders();
counter.users = await uModel.instance.getCountUsers();
let object = {
user: user,
title: titles[section],
balance: {
amount: balance.balance,
attention: (balance.balance <= balance.attention) ? 'attention' : 'normal',
message: (balance.balance <= balance.attention)
? `<div class="balance_message">
<i class="fas fa-exclamation-triangle"></i>
<div class="prompt">
Вам необходимо срочно пополниить баланс.
${(balance.balance < balance.min) ? '</br>Операции недоступны' : ''}
</div>
</div>`
: ''
},
counter: counter
};
if (section === 'orders') {
object.content = `./admin/orders`;
object.orders = await oModel.instance.getOrders();
object.action = 'orders';
} else if (section === 'users') {
object.content = `./admin/users`;
object.users = await uModel.instance.getUsers();
object.action = 'users';
} else if (section === 'persons') {
object.content = `./admin/persons`;
object.persons = await pModel.instance.getPersons();
object.action = 'persons';
} else if (section === 'settings') {
object.content = `./admin/settings`;
object.json = {
owner: user.email,
informes: await iModel.instance.get(),
admins: await aModel.instance.getAll(),
balance: balance
};
object.action = 'settings';
} else {
object.content = `./admin/default`;
object.action = 'default';
}
res.render('admin.ejs', object);
} else {
next();
}
};
ничего такого нет, но если несколько раз обновить страницу то запрос сам зависнет! Может у кого то есть мысли по этому поводу