WebSocket
WebSocket é uma tecnologia que permite a comunicação bidirecional por canais full-duplex sobre um único soquete Transmission Control Protocol (TCP). Ele é projetado para ser executado em browsers e servidores web que suportem o HTML5[1] , mas pode ser usado por qualquer cliente ou servidor de aplicativos. A API WebSocket[2] está sendo padronizada pelo W3C[3] e o protocolo WebSocket está sendo padronizado pelo IETF[4] .
Websocket foi desenvolvido para ser implementado em browsers web e servidores web, mas pode ser usado por qualquer cliente ou aplicação servidor. O protocolo Websocket é um protocolo independente baseado em TCP. Sua única relação com o HTTP é que seu handshake é interpretado por servidores HTTP como uma requisição de Upgrade[1].
Esquema de URL[editar | editar código-fonte]
A especificação do protocolo WebSocket define dois tipos de esquemas de URL, ws: e wss:,[5] para conexões não criptografadas e criptografadas respectivamente. Além do esquema de nomes, o resto dos componentes da URL são definidos para usar a síntaxe genérica de URI.[6]
Suporte[editar | editar código-fonte]
Todos os browsers mais atuais com exceção do browser Android suportam a ultima especificação do protocolo Websocket (RFC 6455). Uma suite de testes detalhados para protocolo lista[1] a conformidade destes browsers aos aspectos específicos do protocolo.
- Internet Explorer 10+
- Mozilla Firefox 4+
- Safari 5+
- Google Chrome 4+
- Opera 11+[7]
| Protocol | Draft date | Internet Explorer | Firefox[8] (PC) | Firefox (Android) | Chrome (PC, Mobile) | Safari (Mac, iOS) | Opera (PC, Mobile) | Android Browser |
|---|---|---|---|---|---|---|---|---|
| hixie-75 | February 4, 2010 | 4 | 5.0.0 | |||||
| hixie-76 hybi-00 |
May 6, 2010 May 23, 2010 |
4.0 (disabled) | 6 | 5.0.1 | 11.00 (disabled) | |||
| 7 hybi-07 | April 22, 2011 | 6[9] 1 | ||||||
| 8 hybi-10 | July 11, 2011 | 7[10] 1 | 7 | 14[11] | ||||
| 13 RFC 6455 | December, 2011 | 10[12] | 11 | 11 | 16[13] | 6 | 12.10[14] |
Referências
- ↑ http://websocket.org/
- ↑ http://dev.w3.org/html5/websockets/
- ↑ Ian Hickson, Google, Inc. (20/01/2011). The WebSocket API 20/01/2011. Visitado em 27/01/2011.
- ↑ http://datatracker.ietf.org/doc/draft-abarth-thewebsocketprotocol/
- ↑ IANA Uniform Resource Identifer (URI) Schemes
- ↑ http://tools.ietf.org/html/draft-hixie-thewebsocketprotocol
- ↑ socket/ When can I use - Compatibility tables for support of HTML5, CSS3, SVG and more in desktop and mobile browsers.
- ↑ WebSockets (support in Firefox) Developer.mozilla.org (2011-09-30). Visitado em 2011-12-10.
- ↑ Bug 640003 - WebSockets - upgrade to ietf-06 Bugzilla.mozilla.org. Visitado em 2011-12-10.
- ↑ WebSockets - upgrade to ietf-07>
- ↑ Chromium bug 64470 Code.google.com (2010-11-25). Visitado em 2011-12-10.
- ↑ WebSockets in Windows Consumer Preview IE Engineering Team (2012-03-19). Visitado em 2012-07-23.
- ↑ WebKit Changeset 97247: WebSocket: Update WebSocket protocol to hybi-17 Trac.webkit.org. Visitado em 2011-12-10.
- ↑ A hot Opera 12.50 summer-time snapshot Opera Developer News. Visitado em 2012-08-03. Cópia arquivada em 2012-08-05.