Manejando desconexiones
Ahora, destaquemos dos propiedades realmente importantes de Socket.IO:
- un cliente Socket.IO no siempre está conectado
- 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:


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