Описание тега websocket
WebSockets (или WebSocket) - это API и протокол для двунаправленной полнодуплексной связи через TCP-сокеты. API WebSockets изначально был частью стандарта HTML5, но он был разделен на отдельный стандарт W3C. Протокол WebSockets - это стандарт IETF, описанный в RFC 6455.
API WebSockets имеет полную поддержку браузеров в Chrome 14, Firefox 6, IE 10 (для настольных ПК и мобильных устройств), Opera 12.1 (для настольных ПК и мобильных устройств), Safari 6.0 (для настольных ПК и мобильных устройств), Android 4.4, Chrome Mobile и Firefox Mobile. Некоторые старые браузеры имеют частичную поддержку или могут поддерживаться с помощью резервного копирования на основе Flash.
WebSockets поддерживает как незашифрованные, так и зашифрованные соединения. Незашифрованные соединения используют схему URL-адресов "ws://" и по умолчанию используют порт 80. Зашифрованные соединения используют схему URL-адресов "wss://" и по умолчанию используют порт 443. Зашифрованные соединения используют безопасность транспортного уровня (TLS).
Простой пример JavaScript браузера WebSockets:
if ("WebSocket" in window) {
var ws = new WebSocket("ws://echo.websocket.org/");
ws.onopen = function() {
console.log("WebSockets connection opened");
ws.send("a test message");
}
ws.onmessage = function(e) {
console.log("Got WebSockets message: " + e.data);
}
ws.onclose = function() {
console.log("WebSockets connection closed");
}
} else {
// No native support
}
Полезные ссылки
- Веб-сокеты эхо-сервер
- Chromium блог анонс WebSockets
- Socket.IO: клиентская и серверная библиотека JavaScript ( Node.js), которая обеспечивает межбраузерное взаимодействие с автоматическим переходом на лучший поддерживаемый метод.
- websockify: WebSockets для общего прокси / моста TCP-сокетов. Три реализации для справки: Python, C и Node.js.
- WebSockets против BOSH/Channel API
- Поддержка браузера и сервера WebSockets: ответ о переполнении стека, http://caniuse.com/
- WebSockets с Spring Framework 4.0