# WebSocket протокол
1. Эфирный
Wireshark правила: tcp.port == 9000
2. Аналитические результаты
Запросы клиентов:
GET / WS / test_2 HTTP / 1.1 Ведущий: локальный: 9000 Подключение: Обновление Обновление: WebSocket Происхождение: Http: //192.168***: 9000 Sec-WebSocket-Version: 13 Sec-WebSocket-Key: t55Td8j76 + BHL9vRhPFXCQ == Sec -WebSocket-расширения: permessage-выкачивает; client_max_window_bits
Сервер ответил:
HTTP / 1.1 101 Протоколы коммутации Обновление: WebSocket соединения: Обновление втор-WebSocket-Accept: 4rAk + P4vM9mrrpKOiDCDSYQpXPA =
Интерпретация:
- Подключение: Подключение должно быть установлено обновление, это указывает на то, что клиент хочет подключиться к модернизации
- Обновление: Обновление должно быть установлено на WebSocket, после получения экспресс-ответа сервера, с помощью HTTP, чтобы обновить преобразование протокола HTTP (обновление) для протокола WebSocket.
- Sec-WebSocket-ключ: случайная строка, используются для проверки протокола не HTTP протокола протокола WebSocket
- Sec-WebSocket-Version: указание, какая версия WebSocket.
- Sec-WebSocket-Accept: рассчитано Sec-WebSocket-Accept и специальная строка. Убедитесь, что соглашение является ли протокол WebSocket.
- П-WebSocket-Расположение: соответствующее поле Хоста, указывающий протокол запрос адрес WebSocket.
- HTTP / 1.1 101 Импульсные протоколы: 101 код состояния указывает на то, что протокол обновления, после возвращения код состояния 101, протокол HTTP, чтобы завершить работу, преобразуется в протокол WebSocket. Тогда это может быть полный дуплекс двусторонняя связь.