io.on("connection",function(socket){
socket.emit("online");
users.findOne({"username":session.username},function(err,user){
console.log("UPDATING THE CURRENT SOCKEDID ie ! "+" socketidfromDB :
"+user.callsession.socketid+" to cureent socketid : "+socket.id);
user.callsession.socketid=socket.id;
user.save();
});
Quando estou tentando executar esse código emconexão do socketio, Isso automagicamente executa duas vezes e acaba salvando socketId errado no DataBase. O socketId armazenado não é o socketId atual, é algo mais.
O que está acontecendo ?
Respostas:
0 para resposta № 1É melhor passar o token da sessão nos dados pelo soquete. Você pode rastrear facilmente toda a comunicação da respectiva sessão. É difícil retransmitir o ID do soquete, o que aumenta a complexidade desnecessária.