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]..




Índice






  • 1 Esquema de URL


  • 2 Suporte


  • 3 Exemplos de WebSockets[15]


  • 4 Referências





Esquema de URL |


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 |


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]








































































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



  • Node.js


    • Socket.IO[16]


    • WebSocket-Node[17]


    • ws[18]



  • Java

    • Jetty[19]


  • Ruby

    • EventMachine[20]


  • Python

    • pywebsocket[21]


  • Erlang

    • Shirasu[22]


  • C++

    • libwebsockets[23]


  • .NET

    • SuperWebSocket[24]






Referências




  1. ↑ 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  !CS1 manut: Nomes múltiplos: lista de autores (link)


  4. ↑ http://datatracker.ietf.org/doc/draft-abarth-thewebsocketprotocol/


  5. ↑ IANA Uniform Resource Identifer (URI) Schemes


  6. ↑ http://tools.ietf.org/html/draft-hixie-thewebsocketprotocol


  7. ↑ socket/ When can I use - Compatibility tables for support of HTML5, CSS3, SVG and more in desktop and mobile browsers.


  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://socket.io/


  17. ↑ https://github.com/Worlize/WebSocket-Node


  18. ↑ https://github.com/einaros/ws


  19. ↑ http://www.eclipse.org/jetty/


  20. ↑ http://github.com/igrigorik/em-websocket


  21. ↑ http://code.google.com/p/pywebsocket/


  22. ↑ https://github.com/michilu/shirasu


  23. ↑ http://git.warmcat.com/cgi-bin/cgit/libwebsockets/


  24. ↑ http://superwebsocket.codeplex.com/







Ícone de esboço
Este artigo sobre Internet é um esboço relacionado ao Projeto Internet. Você pode ajudar a Wikipédia expandindo-o.



Popular posts from this blog

VLC cannot play a non-UDF mastered DVD

Mouse cursor on multiple screens with different PPI

Agildo Ribeiro