WebSocket

Origem: Wikipédia, a enciclopédia livre.

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 sintaxe 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 suíte de testes detalhados para protocolo lista[1] a conformidade destes browsers aos aspectos específicos do protocolo.

Implementation status
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]

Exemplos de WebSockets[15][editar | editar código-fonte]

Referências

  1. a b c http://websocket.org/
  2. http://dev.w3.org/html5/websockets/
  3. Ian Hickson, Google, Inc. (20 de janeiro de 2011). «The WebSocket API». 20/01/2011. Consultado em 27 de janeiro de 2011 
  4. «draft-abarth-thewebsocketprotocol-01 - The WebSocket protocol». datatracker.ietf.org (em inglês). Consultado em 28 de junho de 2022 
  5. IANA Uniform Resource Identifer (URI) Schemes
  6. http://tools.ietf.org/html/draft-hixie-thewebsocketprotocol
  7. «Can I use... Support tables for HTML5, CSS3, etc». caniuse.com. Consultado em 28 de junho de 2022 
  8. «WebSockets (support in Firefox)». Developer.mozilla.org. 30 de setembro de 2011. Consultado em 10 de dezembro de 2011 
  9. «Bug 640003 - WebSockets - upgrade to ietf-06». Bugzilla.mozilla.org. Consultado em 10 de dezembro de 2011 
  10. WebSockets - upgrade to ietf-07>
  11. «Chromium bug 64470». Code.google.com. 25 de novembro de 2010. Consultado em 10 de dezembro de 2011 
  12. «WebSockets in Windows Consumer Preview». IE Engineering Team. 19 de março de 2012. Consultado em 23 de julho de 2012 
  13. «WebKit Changeset 97247: WebSocket: Update WebSocket protocol to hybi-17». Trac.webkit.org. Consultado em 10 de dezembro de 2011 
  14. «A hot Opera 12.50 summer-time snapshot». Opera Developer News. Consultado em 3 de agosto de 2012. Cópia arquivada em 5 de agosto de 2012 
  15. https://www.html5rocks.com/pt/tutorials/websockets/basics/
  16. http://socketo.me/
  17. http://socket.io/
  18. https://github.com/Worlize/WebSocket-Node
  19. https://github.com/einaros/ws
  20. http://www.eclipse.org/jetty/
  21. http://github.com/igrigorik/em-websocket
  22. http://code.google.com/p/pywebsocket/
  23. https://github.com/michilu/shirasu
  24. «Cópia arquivada». Consultado em 17 de abril de 2017. Arquivado do original em 2 de outubro de 2011 
  25. http://superwebsocket.codeplex.com/
Ícone de esboço Este artigo sobre Internet é um esboço. Você pode ajudar a Wikipédia expandindo-o.