سلام به همه دوستان
من دارم ی سایتی رو با نود جی اس مینویسم که این سایت ی سیستم چت داره که با Socket.io دارم مینویسمش
ولی ی مشکلی این وسط پیش اومده که خیلی درگیرم کرده.
بعد از هر رفرش کانکشن قبلی دیسکانکت نمیشه و باز میمونه. یعنی وقتی رفرش میکنی ، یوزری که رفرش کرده رو دو تا حساب میکنه. یا اگر 2 بار رفرش کنی 3 تا حساب میکنه و پیام که میدی 3 دفعه ارسال میشه.
خیلی تو نت گشتم ولی واقعا جوابی دستگیرم نشد. چون همشون تقریبا ی راهو میگفتن
let users = [];
io.getIO().on('connection', socket => {
let token = socket.handshake.query.username;
console.log('user connected')
// Disconnect user
socket.on('disconnect', () => {
let clientId = socket.id;
for (let i = 0; i < users.length; i++) { // Check Users and disconnect user connection
if (users[i].id && users[i].id === clientId) {
users.splice(i, 1);
break;
}
}
console.log('User disconnected');
});
// Push user in users var
users.push({
id: socket.id,
name: token
});
})
این راهی هست که توی اینترنت وجود داره ولی برای من کار نمیکنه
ممنون میشم اگر کمکم کنید
اولین نفری باشید که به این پرسش کمک میکند و مسیر حل مشکل را باز میکند.
اولین پاسخ را بنویسیدشاید پاسخ شما همینجا باشد