جواد قاسمی
4 سال پیش توسط جواد قاسمی مطرح شد
0 پاسخ

بسته نشدن کانکشن بعد از رفرش در Socket.io

سلام به همه دوستان
من دارم ی سایتی رو با نود جی اس مینویسم که این سایت ی سیستم چت داره که با 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
                });
    })

این راهی هست که توی اینترنت وجود داره ولی برای من کار نمیکنه
ممنون میشم اگر کمکم کنید


ثبت پرسش جدید

به همدیگه کمک کنیم

به جواد قاسمی کمک کنید تا مشکل خودش را حل کند؛ این‌طور می‌توانیم با هم پیشرفت کنیم.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام