После рукопожатия websocket, Chrome отключается Это из-за несоответствия доменов? Или ошибка Chrome? - PullRequest
3 голосов
/ 30 января 2010

Я сделал свой собственный простой сервер WebSocket на Python, но Chrome 4.0.249.78 dev (36714) ВСЕГДА отключается после рукопожатия. Чтобы убедиться, что это не мой код, я использовал сервер WebSocket, найденный по адресу https://stackoverflow.com/questions/2153294?tab=newest#tab-top, чтобы проверить его и получить тот же результат (ниже).

listening...
connection!
GET / HTTP/1.1
Upgrade: WebSocket
Connection: Upgrade
Host: localhost:1234
Origin: http://localhost


handshaken
got:
got:
Traceback (most recent call last):
  File "test.py", line 44, in <module>
    start_server()
  File "test.py", line 18, in start_server
    interact(csock, tick)
  File "test.py", line 40, in interact
    send_data(client, "clock ! tick%d" % (tick))
  File "test.py", line 25, in send_data
    return client.send(str)
socket.error: [Errno 10053] An established connection was aborted by the softwar
e in your host machine
Press any key to continue . . .

Вот этот Javascript ...

if ("WebSocket" in window) {
    var ws = new WebSocket("ws://localhost:1234");
    ws.onopen = function() {
        alert('opened');
        ws.send("test");
    }
    ws.onmessage = function (evt) {
        alert('hit');
        $('#game').html(evt.data);
    }
    ws.onclose = function () {
        $('#game').html('Lost Connection');
    }
} else {
    $('#game').html('No support');
}

Кто-нибудь еще сталкивался с этой проблемой или это похоже на проблему несоответствия домена?

1 Ответ

2 голосов
/ 30 января 2010

Я обновил Chrome до новой сборки (4.0.302.3 dev) и теперь получаю правильные ошибки JavaScript в консоли. Это действительно была ошибка несоответствия доменов.

Для тех, кто сталкивается с такой же проблемой, сначала обновите браузер, а затем проверьте свои URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...