Para aclarar cuándo pregunto acerca de la comunicación del navegador al navegador quiero decir sin un servidor entre el mensaje de reenvío. Me gustaría implementar algo así para un juego. Si p2p en websockets no es posible, ¿hay alternativas similares? Cualquier ayuda es apreciada.¿Los websockets permiten la comunicación p2p (navegador a navegador)?
Respuesta
No. Los navegadores solo pueden iniciar conexiones WebSockets, no recibirlas. El W3C browser API spec solo define cómo iniciar una conexión de salida.
Puede crear una aplicación que inicie y acepte conexiones WebSockets, pero los navegadores no lo hacen.
Puede consultar Pusher App que puede usar para crear una aplicación WebSockets con varios clientes. El servicio proporciona hasta 20 clientes WebSockets simultáneos de forma gratuita (puede pagar por una ampliación mayor).
actualización:
El protocolo WebRTC y API está progresando rápidamente y permite un canal de datos que se establece entre dos pares (puede que todavía necesite un servidor STUN/TURN para el NAT transversal y configuración inicial) .
+1. Aunque no recomendaría aplicaciones de terceros. Mucho más fácil de construir el tuyo. –
Pusher ahora proporciona 20 conexiones simultáneas y 100.000 mensajes por día gratis :) – Tieme
Creo que debería actualizar su respuesta: https://labs.ericsson.com/developer-community/blog/beyond-html5-peer-peer- conversational-video –
en teoría es posible con WebRTC DataChannel:
RTCDataChannel es una API de WebRTC para alto rendimiento, baja latencia, comunicación peer-to-peer de datos arbritary. La API es simple-similar a WebSocket-pero la comunicación se produce directamente entre los navegadores , por lo que RTCDataChannel puede ser mucho más rápido que WebSocket incluso si se requiere un servidor de retransmisión (TURN) para hacer frente a los cortafuegos y NAT falla).
"En teoría", ya que no es compatible con un navegador estable y sin embargo, todavía se necesita un servidor de retransmisión (GIRO) si uno de los navegadores es detrás de un symmetric NAT. Sin embargo, es una característica realmente prometedora.
Actualización: 26 Chrome y Firefox 22 RTCDataChannel soporte por defecto y Firefox 19-21 si se habilita mediante el establecimiento de WebRTC media.peerconnection.enabled
true (about: config).
Estaba leyendo sobre websocket y peer 2 peer y encontré PeerJS.
Todavía no he hecho nada, pero por los ejemplos parece prometedor.
PeerJS es un contenedor sobre WebRTC. –
Hoy en día es posible, actualmente solo Chrome, FF y Opera lo admiten (computadora de escritorio).
Hay algunas bibliotecas que comienzan a aparecer en la web en este momento, como PeerJS y js-platform-p2p, lo que simplifica bastante las cosas.
La manera simple y confiable de cross browser compatible es usar http://httprelay.io con llamadas AJAX. También implementa comunicación uno a muchos lo que podría ser útil para el desarrollo del juego.
- 1. comunicación entre la pestaña del navegador
- 2. ¿Comunicación del navegador al navegador sin un servidor?
- 3. ¿El navegador Wii es compatible con WebSockets?
- 4. ¿Hay alguna buena razón para usar Websockets fuera del navegador?
- 5. ¿Pueden los Websockets HTML5 conectar 2 clientes (navegadores) directamente sin usar un servidor? (P2P)
- 6. navegador
- 7. ¿Cuál es la diferencia entre WebRTC y WebSockets para la comunicación de datos de bajo nivel
- 8. ¿Funciona realmente Flash10 + p2p?
- 9. Navegador API REST basado en la web (explorador, navegador, rambler)?
- 10. Minimizar el navegador Chrome a la bandeja?
- 11. Inspección visual automatizada a través del navegador
- 12. navegador detección
- 13. ¿Cómo sé si la conexión está activa con websockets?
- 14. ¿Conectar a mongodb a través del navegador?
- 15. ASP.NET y sesiones: nueva instancia del navegador frente a la nueva ventana del navegador
- 16. ¿Por qué los navegadores permiten desactivar Javascript?
- 17. Acceso a la cámara a través del navegador
- 18. Los divs HTML pueden salir de la ventana del navegador?
- 19. ventana del navegador de redimensionamiento del navegador cruzado en JavaScript
- 20. ¿Cuál es la diferencia fundamental entre WebSockets y TCP puro?
- 21. Acceso sin navegador a LinkedIn con Python
- 22. Navegador y elementos dinámicos
- 23. Comunicación iPhone a iPhone
- 24. jEditorPane como navegador web
- 25. ¿Cómo puedo hacer una conexión de navegador a navegador (peer to peer)?
- 26. Navegador sin cabeza real
- 27. Navegador de archivos Vim
- 28. Navegador cruzado Dom Ready
- 29. ¿Determinado programáticamente DPI a través del navegador?
- 30. Streaming mp4 con navegador vlc a html
http://socket.io –
Sí, pero ningún navegador tiene una implementación en funcionamiento, y creo que ahora es parte de [API de transmisión]. (Http://www.whatwg.org/specs/web-apps)/current-work/multipage/commands.html # peer-to-peer-connections) – antimatter15
El W3C ahora borra la especificación de [WebRTC] (http://www.w3.org/TR/webrtc/) hablando de conexiones punto a punto, entre otras cosas. –