Ir al contenido principal
Versión: 4.x

Manejando desconexiones

Ahora, destaquemos dos propiedades realmente importantes de Socket.IO:

  1. un cliente Socket.IO no siempre está conectado
  2. un servidor Socket.IO no almacena ningún evento
precaución

Incluso sobre una red estable, no es posible mantener una conexión viva para siempre.

Lo cual significa que tu aplicación necesita ser capaz de sincronizar el estado local del cliente con el estado global en el servidor después de una desconexión temporal.

nota

El cliente Socket.IO intentará reconectarse automáticamente después de un pequeño retraso. Sin embargo, cualquier evento perdido durante el período de desconexión se perderá efectivamente para este cliente.

En el contexto de nuestra aplicación de chat, esto implica que un cliente desconectado podría perderse algunos mensajes:

El cliente desconectado no recibe el evento 'chat message'El cliente desconectado no recibe el evento 'chat message'

Veremos en los próximos pasos cómo podemos mejorar esto.