TGViewer
📚 ProTestingInfo 🔷 Канал по тестированию 📚 📚 ProTestingInfo 🔷 Канал по тестированию 📚 @protestinginfo · 14.8K subscribers
Post #4874 3.21K
WebSocket! Пост в нельзяграме присоединяйся к аккаунту (новые рилсы сперва здесь)
WebSocket — это протокол двусторонней связи для постоянного обмена сообщениями клиента и сервера. Как и HTTP, WebSocket работает поверх TCP. Но вместо периодического соединения формата «запрос – ответ», держит постоянное соединение с сервером



Это постоянное соединение между клиентом и сервером, где оба могут отправлять и получать данные в любое время без «новых» HTTP-запросов.
📡 Один handshake, и связь остаётся открытой.
💬 Всё, что приходит на сервер, можно сразу передать другим клиентам (например, чаты, уведомления, трекеры).
Типичные примеры:
• Онлайн-чат и сообщения в реальном времени.
• Биржи: обновление ордеров без обновления страницы.
• Панели мониторинга (логирование, метрики, статусы).
Как работает WebSocket Handshake
Клиент сначала делает обычный HTTP-запрос:
GET /chat HTTP/1.1
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: xxxxxxx

Сервер отвечает:
HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade

Статус 101 означает, что соединение «переключилось» с HTTP на WebSocket.
С этого момента клиент и сервер общаются напрямую без повторных запросов.
Что важно знать QA
• Проверяй, что 101 реально возвращается при успешном handshake.
• После установки соединения проверь, что сообщения проходят двусторонне.
• На клиент → сервер сообщения должны быть замаскированы (это защита от атак).
• Ping/Pong — служат для проверки связи (heartbeat).
• Корректное закрытие соединения возвращает код 1000 (normal closure).
Как тестировать
• Через Postman (WebSocket tab) или DevTools → вкладка WS → Frames.
• Убедись, что сервер не ломается при больших payload’ах и внезапном закрытии.
• Проверяй reconnection, ошибки при отсутствии Auth или неверных данных.

Opcode в WebSocket‑фрейме — это 4 бита в заголовке кадра, которые указывают, какого типа данные внутри этого фрейма и как их интерпретировать.
Проще говоря, по opcode клиент и сервер понимают, что за сообщение пришло: текст, бинарные данные, закрытие соединения или служебный ping/pong.

Хочешь научиться тестировать gRPC и GraphQL на практике до уверенности на собеседовании?

Скидка 1000р до 28 февраля

gRPC
https://stepik.org/a/254052/pay?promo=546c3abf8c76a57e

graphQL
https://stepik.org/a/252924/pay?promo=5ff38847e300e0c9

Планирую провести вебинар и про WebSocket 🙃
  • ❤ 21
  • 🔥 4
  • ❤‍🔥 3
  • ✍ 2
  • 👍 2
  • 👨‍💻 1
  • 💘 1
More from @protestinginfo
  1. Oct 4, 2026🔸🔸🔸 Всем привет! промокоды на октябрь для закрепления знаний. Промокод SKILL900 - 900 ₽…
  2. Sep 30, 2026Дальше будут еще подробнее посты с подключением. Ответ от ИИ после того как подключила MCP…
  3. Sep 29, 2026Присоединяйся к нельзяграму Постепенно буду раскрывать эту тему пока на таких картинках, р…
  4. Sep 28, 2026Ссылка на все расширения - сохранить и использовать в работе
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →