Hola tengo un sistema de login en nodejs en el que tambien comprueba si el usuario ya esta conectado o no. Pero no funciona del todo bien.
el evento on disconnect:
Código Javascript
:
Ver originalvar users=io.sockets.clients(socket.room);
for(var i=users.length-1;i>-1;i--){
if(users[i].name==socket.name){
users.splice(i,1);
break;
}
}
El login despues de comprobar user y pass:
Código Javascript
:
Ver originalvar loged=false;
for(i in users){
if(users[i].name==datos[0]){
loged=true;
break;
}
}
datos[0] es el campo del user que se recibe.
La variable users es un array que contiene propiedades de todos los usuarios como el nombre... Cuando se desconectan intento eliminar del array users el objeto correspondiente al socket.user. Pero a veces no funciona y no se porque.
Creo que esta en el bucle de disconnect.
Saludos