Кросс-серверные веб-сокеты - PullRequest
0 голосов
/ 13 июня 2011

Я получаю эту ошибку, когда пытаюсь подключиться к своему серверу веб-сокетов:

Error during WebSocket handshake: origin mismatch: http://skerit.com != http://kipdola.be

Конечно, мне пришлось добавить исходный ответ, например:

    self.client.send("Sec-WebSocket-Origin: http://kipdola.be\r\n")
    self.client.send("Sec-WebSocket-Location: ws://kipdola.be:1234/\r\n")

Но как мне установить несколько источников?

1 Ответ

1 голос
/ 13 июня 2011

Вы просто возвращаете источник, предоставленный пользователем в запросе, запрос выглядит примерно так:

GET / HTTP/1.1
Upgrade: WebSocket
Connection: Upgrade
Host: skerit.com
Origin: http://skerit.com

Вы выполняете проверку на сервере, если заголовок Origin присутствует в списке разрешенных источникови просто верните источник обратно клиенту:

self.client.send("Sec-WebSocket-Origin: " + headers["Origin"] + "\r\n")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...