Какие браузеры поддерживают HTML5 WebSocket API?

Я собираюсь разработать приложение мгновенного обмена сообщениями, которое работает в браузере.

Какие браузеры поддерживают WebSocket API?

278
задан Sareuon 12 December 2011 в 09:52
поделиться

1 ответ

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

Любой браузер с Flash может поддерживать WebSocket с помощью прокладки / полифилла web-socket-js .

См. caniuse для получения информации о текущем статусе поддержки WebSockets в настольных и мобильных браузерах.

См. Отчеты об испытаниях из набора тестов WS, включенного в Autobahn WebSockets , для проверки соответствия функций / протоколов.


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

Это зависит от того, какой язык вы используете.

В Java / Java EE:

  • Jetty 7.0 поддерживает его (очень простой в использовании) V 7.5 поддерживает RFC6455 - Jetty 9.1 поддерживает javax.websocket / JSR 356)
  • GlassFish 3.0 (очень низкий уровень, а иногда и сложный), Glassfish 3.1 имеет новую обновленную поддержку Websocket, которая более удобна для разработчиков V 3.1.2 поддерживает RFC6455
  • Caucho Resin 4.0.2 (еще не пробовал) V 4.0.25 поддерживает RFC6455
  • Tomcat 7.0.27 теперь поддерживает V 7.0.28 поддерживает RFC6455
  • Tomcat 8.x имеет встроенную поддержку для веб-сокетов RFC6455 и совместим с JSR 356
  • JSR 356, включенный в Java EE 7 , будет определять Java API для WebSocket, , но еще не является стабильным и полным . См. Статью Аруна ГУПТА WebSocket и Java EE 7 - Подготовка к JSR 356 (TOTD # 181) и QCon презентация (с 00:37:36 по 00:46:53) для больше информации о прогрессе. Вы также можете посмотреть Java websocket SDK .

Некоторые другие реализации Java:

В C #:

В PHP:

В Python:

В C:

В Node.js:

  • Socket.io : Socket.io также имеет серверную часть порты для Python, Java, Google GO, Rack
  • sockjs : sockjs также имеет серверные порты для Python, Java, Erlang и Lua
  • WebSocket-Node - чистая реализация клиента и сервера на JavaScript для HyBi- 10.

Vert.x (также известный как Node.x) : реализация типа узла полиглота, работающая на Java 7 JVM и основанная на Netty с:

  • Поддержка Ruby (JRuby), Java, Grovy, Javascript (Rhino / Nashorn), Scala, ...
  • Истинная многопоточность. (в отличие от Node.js)
  • "из коробки" понимает несколько сетевых протоколов, включая: TCP, SSL, UDP, HTTP, HTTPS, Websockets, SockJS в качестве альтернативы для WebSockets

Pusher.com - это облачная служба Websocket, доступная через REST API.

Облачная платформа DotCloud поддерживает веб-узлы и языки программирования Java (контейнер сервлетов Jetty), NodeJS, Python, Ruby, PHP и Perl.

Облачная платформа Openshift поддерживает веб-сокеты и формы планшетов Java (Jboss, Spring, Tomcat и Vertx), PHP (ZendServer и CodeIgniter), Ruby (ROR), Node.js, Python (Django и Flask).

Для других языковых реализаций см. Статью в Википедии .

RFC для веб-сокетов: RFC6455

427
ответ дан 23 November 2019 в 02:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: