Как использовать сокеты в JavaScriptHTML? [закрытый]



Как использовать сокеты в JavaScriptHTML?



может быть, с помощью некоторых прохладных HTML5?



библиотеки?
Учебники?
Статьи В Блогах?

588   3  

3 ответов:

технические характеристики:

статьи:

руководство:

библиотеки:

как использовать сокеты в JavaScript / HTML?

нет возможности использовать универсальные сокеты в JS или HTML. Это было бы катастрофой для безопасности, например.

есть WebSocket в HTML5. Клиентская сторона довольно тривиальна:

socket= new WebSocket('ws://www.example.com:8000/somesocket');
socket.onopen= function() {
    socket.send('hello');
};
socket.onmessage= function(s) {
    alert('got reply '+s);
};

вам понадобится специализированное приложение сокета на стороне сервера, чтобы принимать подключения и сделать что-то с ними; это не то, что вы обычно делаете с веб-сервера, скриптов взаимодействие. Однако это относительно простой протокол; моя конечная точка на основе Noddy Python SocketServer была всего лишь парой страниц кода.

в любом случае, он еще не существует. Ни спецификация JavaScript-side, ни спецификация сетевого транспорта не прибиты, и никакие браузеры ее не поддерживают.

вы можете, однако, использовать Flash, где это возможно, чтобы предоставить вашему сценарию запасной вариант, пока WebSocket не станет широко доступным. Gimite по web-socket-js является одним из бесплатных примеров таких. Однако вы подвержены тем же ограничениям, что и Flash Sockets, а именно, что ваш сервер должен иметь возможность выплевывать междоменную политику по запросу на порт сокета, и у вас часто будут возникать трудности с прокси/брандмауэрами. (Flash-сокеты производятся напрямую; для кого-то без прямого публичного IP-доступа, который может выйти из сети только через HTTP-прокси, они не будут работать.)

Если вам действительно нужно двусторонняя связь с низкой задержкой, вам лучше придерживаться XMLHttpRequest на данный момент.

Я думаю, что важно отметить, теперь, когда этот вопрос старше 1 года, что Socket.IO с тех пор вышел и, кажется, основной способ работы с сокетами в браузере теперь; он также совместим с узел.js насколько я знаю.

Comments

    Ничего не найдено.