| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/API/WebSockets_API | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
Hinweis: Diese Funktion ist in Web Workers verfgbar.
Die WebSocket API ermglicht es, eine bidirektionale interaktive Kommunikationssitzung zwischen dem Browser des Benutzers und einem Server zu erffnen. Mit dieser API knnen Sie Nachrichten an einen Server senden und Antworten erhalten, ohne den Server auf eine Antwort abfragen zu mssen.
Die WebSocket API bietet zwei alternative Mechanismen zum Erstellen und Verwenden von Websocket-Verbindungen: die WebSocket-Schnittstelle und die WebSocketStream-Schnittstelle.
WebSocket-Schnittstelle ist stabil und wird von Browsern und Servern gut untersttzt. Sie untersttzt jedoch keinen backpressure. Infolgedessen knnen, wenn Nachrichten schneller eintreffen, als die Anwendung sie verarbeiten kann, entweder der Arbeitsspeicher des Gerts durch die Pufferung dieser Nachrichten gefllt werden, die Anwendung aufgrund einer 100%igen CPU-Auslastung nicht mehr reagieren oder beides eintreten.WebSocketStream-Schnittstelle ist eine Promise-basierte Alternative zu WebSocket. Sie verwendet die Streams API zum Empfangen und Senden von Nachrichten, was bedeutet, dass Socket-Verbindungen automatisch von der Stream-Backpressure profitieren und die Geschwindigkeit des Lesens oder Schreibens regulieren knnen, um Engpsse in der Anwendung zu vermeiden. WebSocketStream ist jedoch nicht standardisiert und wird zurzeit nur von einer Rendering-Engine untersttzt.Darber hinaus wird erwartet, dass die WebTransport API die WebSocket API fr viele Anwendungen ersetzt. WebTransport ist eine vielseitige, niedrigschwellige API, die Backpressure und viele andere Funktionen bietet, die weder von WebSocket noch von WebSocketStream untersttzt werden, wie unidirektionale Streams, nicht sequenzielle Lieferung und unzuverlssige Datenbertragung ber Datagramme. WebTransport ist komplexer zu verwenden als WebSockets, und die Untersttzung in verschiedenen Browsern ist nicht so verbreitet, erlaubt jedoch die Implementierung anspruchsvoller Lsungen. Falls Standard-WebSocket-Verbindungen gut fr Ihren Anwendungsfall geeignet sind und Sie eine breite Browser-Kompatibilitt bentigen, sollten Sie die WebSockets API verwenden, um schnell in Gang zu kommen. Wenn Ihre Anwendung jedoch eine nicht standardmige benutzerdefinierte Lsung erfordert, sollten Sie die WebTransport API verwenden.
Hinweis: Wenn eine Seite eine offene WebSocket-Verbindung hat, kann der Browser sie mglicherweise nicht zum bfcache hinzufgen. Es ist daher eine gute Praxis, die Verbindung zu schlieen, wenn der Benutzer die Seite beendet hat. Siehe Arbeiten mit dem bfcache.
WebSocketDie primre Schnittstelle zum Herstellen einer Verbindung zu einem WebSocket-Server und zum Senden und Empfangen von Daten ber die Verbindung.
WebSocketStream Promise-basierte Schnittstelle zum Herstellen einer Verbindung zu einem WebSocket-Server; verwendet Streams, um Daten ber die Verbindung zu senden und zu empfangen.
CloseEventDas von dem WebSocket-Objekt gesendete Ereignis, wenn die Verbindung geschlossen wird.
MessageEventDas von dem WebSocket-Objekt gesendete Ereignis, wenn vom Server eine Nachricht empfangen wird.
Die HTTP-Header werden im WebSocket-Handshake verwendet:
Sec-WebSocket-KeyEin HTTP-Anforderungsheader, der ein nonce vom Client enthlt. Dies wird im WebSocket-ffnungshandshake verwendet, um zu berprfen, dass der Client ausdrcklich beabsichtigt, eine WebSocket-Verbindung zu ffnen. Es wird automatisch vom Browser hinzugefgt.
Sec-WebSocket-AcceptEin HTTP-Antwortheader, der im WebSocket-ffnungshandshake verwendet wird, um anzuzeigen, dass der Server bereit ist, zu einer WebSocket-Verbindung zu wechseln.
Der Wert in der Direktive wird aus dem Wert von Sec-WebSocket-Key in der entsprechenden Anforderung berechnet.
Sec-WebSocket-VersionEin HTTP-Header, der in Anforderungen die vom Client verstandene Version des WebSocket-Protokolls angibt. In Antworten wird er nur gesendet, wenn die angeforderte Protokollversion vom Server nicht untersttzt wird, und listet die vom Server untersttzten Versionen auf.
Sec-WebSocket-ProtocolEin HTTP-Header, der in Anforderungen die vom Client untersttzten Subprotokolle in bevorzugter Reihenfolge angibt. In Antworten gibt er das vom Server aus den Prferenzen des Clients ausgewhlte Subprotokoll an.
Sec-WebSocket-ExtensionsEin HTTP-Header, der in Anforderungen die vom Client untersttzten WebSocket-Erweiterungen in bevorzugter Reihenfolge angibt. In Antworten gibt er die vom Server aus den Prferenzen des Clients ausgewhlte Erweiterung an.
wss:// oder ws:// und normale Sockets ber ssl://, tcp:// handhabt.| Spezifikation |
|---|
| WebSockets # the-websocket-interface |
Der Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |