Как отписать сокет от комнаты, когда сокет отключен от сервера - PullRequest
0 голосов
/ 02 ноября 2018

Если сокет отключен от сервера, все ли подписки этого сокета будут удалены из чата по умолчанию (с помощью парусов) или мы должны удалить его вручную (по коду)

1 Ответ

0 голосов
/ 03 ноября 2018

База исходного кода socket.io this.leaveAll() будет запущена до события отключения при пожаре. Так что не нужно выходить из комнаты вручную

Socket.prototype.onclose = function(reason){
  if (!this.connected) return this;
  debug('closing socket - reason %s', reason);
  this.emit('disconnecting', reason);
  this.leaveAll();                    //  leave from all rooms
  this.nsp.remove(this);
  this.client.remove(this);
  this.connected = false;
  this.disconnected = true;
  delete this.nsp.connected[this.id];
  this.emit('disconnect', reason);   // disconnect event fire here
};
...