HTML5 открывает два веб-сокета с одной html-страницы - PullRequest
3 голосов
/ 24 августа 2011

Могу ли я открыть два соединения WebSocket с одним сервером, но двумя разными портами с одной html-страницы.

Я искал в Google, но не смог найти ничего полезного.А также вы можете дать мне ссылки на некоторые учебные пособия для веб-сокетов.Вот те, которые я нашел:

http://websocket.org/echo.html

http://www.html5rocks.com/en/tutorials/websockets/basics/

1 Ответ

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

Это не сработает?

var socket1 = new WebSocket('ws://localhost:1001');
var socket2 = new WebSocket('ws://localhost:1002');

Что касается того, как ваш сервер справится с этим, это будет очень сильно зависеть от вашей серверной технологии.

Для учебных пособий аспект WebSockets на стороне клиента очень прост, вот и все:

var socket;

// Firefox uses a vendor prefix
if (typeof(MozWebSocket) != 'undefined') {
    socket = new MozWebSocket('ws://localhost');
}
else if (typeof(WebSocket) != 'undefined') {
    socket = new WebSocket('ws://localhost');
}

if (socket != null) {
    socket.onmessage = function(event) {
        // fired when a message is received from the server
        alert(event.data);
    };

    socket.onclose = function() {
        // fired when the socket gets closed
    };

    socket.onerror = function(event) {
        // fired when there's been a socket error
    };

    socket.onopen = function() {
        // fired when a socket connection is established with the server,
        // Note: we can now send messages at this point

        // sending a simple string to the server
        socket.send('Hello world');

        // sending a more complex object to the server
        var command = {
            action: 'Message',
            time: new Date().toString(),
            message: 'Hello world'
        };
        socket.send(JSON.stringify(command));
    };
}
else {
    alert('WebSockets are not supported by your browser');
}

Серверный аспект обработки входящих подключений WebSocket намного сложнее и зависит от вашей серверной технологии (ASP.NET, PHP, Node.js и т. Д.).

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