Wie kann ich einen Browser zur browser (peer to peer) Verbindung machen?
Wie erstelle ich eine website mit HTML5, CSS und JavaScript auf der client-Seite, die es ermöglichen direkte tcp/ip-Verbindung zwischen client-Browser, sobald die Seite geladen ist.
Muss ich tun, um zu reduzieren die Latenz, da die Website wird verlangen, dass die Eingabe von einem Benutzer zu übertragen, um die anderen Benutzer so bald wie möglich senden von Daten vom client A auf Server und dann auf client B ist nicht eine gute option.
Lese ich die vorherigen posts zu diesem Thema, aber es gab keine funktionierende Lösung/Beispiele zur Verfügung, die ich finden konnte. Von was ich gelesen habe die direkte Verbindung zwischen clients können über Plug-ins wie Silverlight, Java oder Flash.
Gibt es eine Lösung, die nicht benötigt plugins? Ich möchte nur JavaScript.
InformationsquelleAutor der Frage Răzvan Flavius Panda | 2011-08-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier auf Stackoverflow gibt mehrere Themen über P2P-verbindungen im Browser:
Wie bereits erwähnt in den meisten topicts, beide 2008 HTML5 arbeitet Entwürfe wurden mit einem Abschnitt "Peer-to-peer-verbindungen":
Da die W3C Working Draft 12 Februar 2009 Sie im Abschnitt "Peer-to-peer-verbindungen" verschwunden. Aber diese P2P-Verbindung ist nicht verschwunden. Es ist zurück unter dem Namen PeerConnection innerhalb der WebRTC (Real-Time Communications) technische Daten:
Seit dem 31. Oktober 2011, die W3C Editor ' s Draft ist ein offizieller Arbeitsentwurf:
Nur die Umsetzung der PeerConnection (UDP-basiert) existiert in der modifizierten WebKit-durch den Ericsson labs (Mai 2011), das funktioniert Recht gut. Einige patches sind in WebKit-jetzt (Okt. 2011-siehe updates weiter unten!):
Außerdem den WebRTC-initiative ist ein Projekt von Google, Mozilla und Opera. Somit sind Sie weiterhin der Konkretisierung auf PeerConnection:
Wohl Chrome (nutzt WebKit) wird die erste große browser mit Unterstützung von WebRTC mit PeerConnection:
Seit dem 18. Jänner 2012, Chrome unterstützt WebRTC sowie. Es sein kann verwendet in der Dev-Kanal (Windows, OSX, Linux) und dem Canary-build (Windows und OSX) von aktivieren Sie unter
chrome://flags
. Es nur nur unterstütztMediaStream
wie Video und audio und kann getestet werden mit mehreren Demos. Die übertragung von Anwendungsdaten wieString
/ArrayBuffer
/... wird nicht unterstützt, bis jetzt.Seit 16. März 2012, die WebRTC-Editor ' s Draft trennt eine "Peer-to-peer-Daten-API" zum senden und empfangen von generic application data (
String
,ArrayBuffer
undBlob
). Chrom implementieren möchte die Daten API bald (10 April 2012).April, 3., Mozilla veröffentlichte eine erste funktionierende Beispiel auf WebRTC für Firefox als gut.
DataChannel ist geplant für version 25 von Chrome, hinter einer fahne, unterdessen kann es sein, getestet in Firefox Nightly/Aurora (12. Dezember 2012):
2018: DataChannels sind noch experimentell, sondern in aktuellen Versionen von Chrome und Firefox:
InformationsquelleAutor der Antwort Dennis
Werde ich dich enttäuschen - dies ist derzeit nicht möglich nur mit JavaScript. Websockets (und-Buchse.IO) ermöglichen eine socket-ähnliche Verbindung zwischen dem client und dem server, aber nicht zwischen den clients. Ihre option ist ein plugin - sei es Flash, Silverlight, Java oder benutzerdefinierte-gemacht.
Was man tun kann, ist socket.io und zu emulieren, dass durch das schreiben eine einfache proxy-server.
InformationsquelleAutor der Antwort Emil Ivanov
Möchte ich Ihre Aufmerksamkeit auf die Tatsache, dass die meisten Benutzer heutzutage sind hinter NAT-Routern oder firewalls, und dies bedeutet, dass Sie nicht einfach zu etablieren, die eingehende Verbindung auf dem computer des Benutzers. Also deine Idee wäre (wenn überhaupt möglich) funktionieren nur in einigen Fällen und bringen zusätzliche Komplexität zu Ihrer Lösung. So client-server-system mit möglicherweise persistente Verbindung (mittels websockets oder Buchse.io), ist eine bessere option.
InformationsquelleAutor der Antwort Eugene Mayevski 'Allied Bits