1
Я пишу сервер websocket с использованием C++, я ожидал в рукопожатии использовать chrome 17 в качестве клиента.websocket handshake
Когда сервер отправить клиент хром ответа рукопожатия всегда показывает ошибку ниже в консоли:
Ошибки при WebSocket рукопожатия: Sec-WebSocket-Accept рассогласования
события в хроме, как показано ниже:
t=1328796971951 [st= 5] WEB_SOCKET_SEND_REQUEST_HEADERS
--> GET/HTTP/1.1
Upgrade: websocket
Connection: Upgrade
Host: 127.0.0.1:38950
Origin: null
Sec-WebSocket-Key: zMb+UCeRb+2OmMp9fpbxHw==
Sec-WebSocket-Version: 13
t=1328796971951 [st= 5] SOCKET_STREAM_SENT
t=1328796971971 [st=25] SOCKET_STREAM_RECEIVED
t=1328796971971 [st=25] WEB_SOCKET_READ_RESPONSE_HEADERS
--> HTTP/1.1 101 Switching Protocols
Upgrade: WebSocket
Connection: Upgrade
Sec-WebSocket-Accept: 4emBYsdkl0SxeUMGLNc0dFsI1/E=
t=1328796971972 [st=26] -REQUEST_ALIVE
Пожалуйста, помогите.
Значение, которое вы отправляете в заголовке принимаю это неправильно. Вам нужно показать свой код для вычисления значения accept, иначе мы не знаем, что вы делаете неправильно. – kanaka
Спасибо, Вы правы, сервер посылает неправильный ключ. –
При вычислении ключа входной ключ заканчивается на «/ r/n», и именно по этой причине я всегда ошибаюсь. –