Как установить безопасное соединение через веб-сокет, используя websocket-server и node.js - PullRequest
2 голосов
/ 26 августа 2011

Я не могу установить безопасное соединение с веб-сокетом, используя websocket-server и node.js

на стороне сервера

var options = {
    key: fs.readFileSync(PRIVATE_KEY),
    cert: fs.readFileSync(CERTIFICATE)
};

// create web server
var server = ws.createServer(options);
server.listen(8000);
...

на стороне клиента

<script language="javascript" type="text/javascript">
    var wsUri = "wss://url:8000";


    function init() {            
        websocket = new WebSocket(wsUri);
    }

    ...

    window.addEventListener("load", init, false);
</script>

Но это работает для ws

var wsUri = "ws://url:8000";

Есть идеи?

1 Ответ

3 голосов
/ 29 августа 2011

Из файла readme для websocket-server :

Это сервер для протокола WebSocket. Это в настоящее время работает как с draft75, так и draft76 спецификации протокола.

Chrome v15 больше не использует draft75 / draft76. Он использует последнюю версию 8 спецификации WebSocket и не совместим со старыми черновиками (изменился и механизм квитирования, и способ отправки данных). Это может быть вашей проблемой.

Попробуйте использовать пакет node.js, который поддерживает более новую спецификацию WebSocket, я бы порекомендовал Worlize / WebSocket-Node , или вы можете попробовать socket.io .

...