Socket.io не тригерит событие 'disconnect' при ручном отключении пользователя
io.on('connection', async (socket) => {
console.log(socket.id + " connected!");
const params = socket.handshake.query;
if (!params.vk_sign) {
socket.disconnect();
}
const sign = check_sign(params.vk_sign);
if (!sign) {
socket.disconnect();
}
players[socket.id] = 1;
update_online();
const player = await get_player(1);
socket.emit("UserProfile", player);
socket.on('disconnect', () => {
delete players[socket.id];
update_online();
console.log(socket.id + " disconnected!");
})
});
Есть такой простой код, при какой либо не удачной проверке, я провожу ручное отключение пользователя, посредством: socket.disconnect(); но после этого, серверная часть не вызывает событие disconnect. Почему так происходит? (На клиентской части оно срабатывает)