Задать вопрос
alex4answ
@alex4answ

Как организовать работу с WebSocket?

Добрый день, нужно из разных компонентов на разных уровнях подписаться на WebSocket.

Где мне стоит выполнить подключение?

У меня 2 варианта:
1. Использовать контекст, передавая подключение
2. Подключение в отдельном файле, а в useEffect компонента подписываться на обновления.

Но найти хороших примеров, где не тяп ляп "щас вот в useEffect все по быстрому настроим", я не нашел.
Не понятно как и где стоит делать обработку ошибок, обрыв соединения и тп.

Подскажите пожалуйста, может быть у кого-то есть какие-то наработки, либо видел github проекты качественные, а не обрубок "работает и ладно, сойдет".

Как обычно организовывают работу с ws, где хранят подключения, как передают компонентам, как обрабатывают отключение ?
  • Вопрос задан
  • 75 просмотров
Подписаться 3 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Решения вопроса 1
miraage
@miraage
Старый прогер
Зависит от размера проекта и дальнейшей поддержки. Если раз-два-плюнуть, то хоть через `window.ws = new WebSocket()`. Если уже нужно что-то более лаконичное, то я бы постарался максимально изолировать подключение к сокету от компонентов. Сделал бы так, чтобы какой-нибудь контекст прокидывал лишь бизнес-методы компонентам. А саму работу с сокетом делал под капотом, скрывая это от компонентов.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 80 000 до 120 000 ₽
ITK academy Воронеж
от 50 000 до 90 000 ₽