Browser apa yang mendukung API WebSocket HTML5?

278

Saya akan mengembangkan aplikasi pesan instan yang berjalan di browser.

Browser apa yang mendukung API WebSocket ?

Sareuon
sumber
2
Kami menyimpan daftar terbaru browser yang mendukung WebSocket di situs web proyek Java WebSocket kami: jwebsocket.org/browsers.htm
Predrag Stojadinović
62
Kita harus berusaha memperbarui jawaban ini, bukan? Saya kira itu lebih baik untuk bertanya kembali.
Dreeves
5
Situs terbaik untuk HTML5 dan fungsionalitas terkait adalah caniuse.com
kanaka
5
Ada wiki komunitas yang bagus tentang websockets HTML5: stackoverflow.com/questions/4262543/using-html-5-websockets
Wouter Dorgelo
1
@meagar - Saya tidak setuju. Saya pikir itu harus dilindungi sebagai wiki untuk mencegah jawaban baru, tetapi pertahankan jawaban yang bermanfaat saat ini. Pertanyaan ini memiliki lebih dari 100.000 tampilan.
Travis J

Jawaban:

428

Sisi klien

Browser apa pun dengan Flash dapat mendukung WebSocket menggunakan web-socket-js shim / polyfill.

Lihat caniuse untuk status dukungan WebSockets saat ini di browser desktop dan seluler.

Lihat laporan pengujian dari tes WS yang disertakan dalam Autobahn WebSockets untuk uji kesesuaian fitur / protokol.


Sisi server

Itu tergantung pada bahasa yang Anda gunakan.

Di Jawa / Java EE:

Beberapa implementasi Java lainnya:

Dalam C #:

Dalam PHP:

Dengan Python:

Dalam C:

Di Node.js:

  • Socket.io : Socket.io juga memiliki port di sisi server untuk Python, Java, Google GO, Rack
  • sockjs : sockjs juga memiliki port serveride untuk Python, Java, Erlang dan Lua
  • WebSocket-Node - Implementasi Klien Murni & Server HyBi-10 JavaScript.

Vert.x (juga dikenal sebagai Node.x) : Sebuah simpul seperti implementasi polyglot yang berjalan pada Java 7 JVM dan berdasarkan pada Netty dengan:

  • Dukungan untuk Ruby (JRuby), Java, Groovy, Javascript (Rhino / Nashorn), Scala, ...
  • Threading benar. (tidak seperti Node.js)
  • Memahami beberapa protokol jaringan di luar kotak termasuk: TCP, SSL, UDP, HTTP, HTTPS, Websockets, SockJS sebagai cadangan untuk WebSockets

Pusher.com adalah layanan cloud Websocket yang dapat diakses melalui REST API.

Platform cloud DotCloud mendukung Websockets, dan Java (Jetty Servlet Container), NodeJS, Python, Ruby, PHP, dan bahasa pemrograman Perl.

Platform cloud openshift mendukung soket web, dan pelat Java, Java (Jboss, Spring, Tomcat & Vertx), PHP (ZendServer & CodeIgniter), Ruby (ROR), Node.js, Python (Django & Flask).

Untuk implementasi bahasa lainnya, lihat artikel Wikipedia untuk informasi lebih lanjut .

RFC untuk Websockets: RFC6455

Cbe317
sumber
32
+1 untuk selalu memperbarui. Opera juga akan memiliki dukungan Websockets di 10.70.
Sasha Chedygov
Benar, saya pikir mereka mengganti nama Opera 10.70 di Opera 11 opera.com/browser/next
Cbe317
3
@Tony: IE9 tidak mendukung WebSockets. Ada dukungan eksperimental yang tersedia sebagai add-on di HTML5 Labs , tetapi tidak dikirimkan dan siap.
Shog9
Webbit adalah server Java WebSocket yang luar biasa yang harus ditambahkan ke daftar.
Aslak Hellesøy
2
Di Go-lang, websockets ada di perpustakaan standar: go.net/websocket
naufraghi