Can HTML5 Websockets connect 2 clients (browsers) directly without using a server? (P2P) [duplicate]
Asked Answered
S

3

68

Using HTML5 Websockets, can I open a socket directly between 2 clients (browsers) (assuming I know their IP addresses and there are no NAT traversal issues). I want to send some data directly from one browser to another browser, essentially creating a P2P network. Everything I've read so far on the web, websockets are all used to communicate between client and server, but nothing about client to client.

Swanhilda answered 25/11, 2010 at 13:4 Comment(0)
C
47

No

Already answered here for more details: Do websockets allow for p2p (browser to browser) communication?

Update:

The WebRTC protocol and API is making rapid progress and allows a Data Channel to be established between two peers (you still may need a STUN/TURN server for the initial NAT traversal and setup).

Crustaceous answered 26/11, 2010 at 22:52 Comment(5)
I think you need to take a look at this : html5rocks.com/en/tutorials/webrtc/basics/#toc-rtcdatachannel labs.ericsson.com/developer-community/blog/….Emaemaciate
@MehdiKaramosly, the Ericsson blog post is fairly old and is talking about the technology that became WebRTC.Crustaceous
which is peerConnection ?Emaemaciate
peerConnection is one piece of WebRTC (it's the name for a big collection of technologies).Crustaceous
As of 2017, WebRTC is a standard part of most modern browsers. See https://mcmap.net/q/103413/-will-html5-allow-web-apps-to-make-peer-to-peer-http-connectionsLathing
J
7

From past to future: Pick your implementation.

  • Most modern browsers support peer to proxy to peer using Websockets.
  • Peer to peer is only available using certain browsers plug-ins for example Opera Unite and FireFox Pow.
  • Major browsers are in the process of implementing WebRTC which will allow peer to peer.
Jazmin answered 31/5, 2012 at 16:34 Comment(0)
G
3

If you just don't want to implement server your self you can use https://httprelay.io . No additional libraries required, all communication based on simple AJAX calls.

Gazelle answered 24/4, 2017 at 14:58 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.