Sec-WebSocket-Extensions выпускают PHP - PullRequest
0 голосов
/ 03 января 2019

Я новичок в websocket от PHP (использую Ratchet), и для тестирования я реализовал пример "Hello world", доступный по адресу: http://socketo.me/docs/hello-world. Не, если это полезно, но я использую Mac OS X.

После установки библиотеки я запустил сервер и пробую его с помощью команды «Telnet», как и в предыдущем предложении url, и все работает отлично.

Моя проблема возникает, когда я выполняю следующий код в консоли Google Chrome для отправки сообщения на сервер:

var conn = new WebSocket('ws://localhost:8080');
conn.onopen = function(e) {
    console.log("Connection established!");
};

conn.onmessage = function(e) {
    console.log(e.data);
};

На консоли сервера я получаю этот заголовок и не понимаю, почему:

"GET / HTTP/1.1
Host: localhost:8080
Connection: Upgrade
Pragma: no-cache
Cache-Control: no-cache
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
Upgrade: websocket
Origin: http://localhost
Sec-WebSocket-Version: 13
Accept-Encoding: gzip, deflate, br
Accept-Language: it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7
Sec-WebSocket-Key: ImJy6sbW1hRDlg+CuawYJw==
Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits

" to 0 other connections

Почему с командой telnet все работает, в то время как с консолью Google Chrome (а я рисую другим способом) это не работает? Что я не так?

...