У WebSocket есть readyState и события open, close, error и message; отправлять данные следует только в состоянии OPEN.
Как отслеживать состояние WebSocket-соединения и понимать, что сокет открыт либо соединение разорвано?
У WebSocket есть readyState и события open, close, error и message; отправлять данные следует только в состоянии OPEN.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
У WebSocket есть readyState и события open, close, error и message; отправлять данные следует только в состоянии OPEN.
Обрыв сети не всегда обнаруживается мгновенно, поэтому протоколу могут понадобиться heartbeat и таймаут ожидания. Браузерный API не позволяет вручную отправлять протокольный ping, но можно согласовать прикладные сообщения. Переподключение делают с backoff и восстановлением пропущенного.