WebSocket

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

* Some parts of this feature may have varying levels of support.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Das WebSocket-Objekt bietet die API zum Erstellen und Verwalten einer WebSocket-Verbindung zu einem Server sowie zum Senden und Empfangen von Daten über die Verbindung.

Um ein WebSocket zu erstellen, verwenden Sie den WebSocket() Konstruktor.

Hinweis: Die WebSocket-API hat keine Möglichkeit, Rückstaudruck anzuwenden. Wenn Nachrichten schneller eintreffen, als die Anwendung sie verarbeiten kann, wird entweder der Speicher des Geräts durch Pufferung dieser Nachrichten gefüllt, die Anwendung wird aufgrund von 100% CPU-Auslastung nicht mehr ansprechbar, oder beides. Für eine Alternative, die automatisch Rückstaudruck bietet, siehe WebSocketStream.

EventTarget WebSocket

Konstruktor

WebSocket()

Gibt ein neu erstelltes WebSocket-Objekt zurück.

Instanz-Eigenschaften

WebSocket.binaryType

Der binäre Datentyp, der von der Verbindung verwendet wird.

WebSocket.bufferedAmount Schreibgeschützt

Die Anzahl von Bytes in der Warteschlange.

WebSocket.extensions Schreibgeschützt

Die vom Server ausgewählten Erweiterungen.

WebSocket.protocol Schreibgeschützt

Das vom Server ausgewählte Sub-Protokoll.

WebSocket.readyState Schreibgeschützt

Der aktuelle Zustand der Verbindung.

WebSocket.url Schreibgeschützt

Die absolute URL des WebSocket.

Instanz-Methoden

WebSocket.close()

Schließt die Verbindung.

WebSocket.send()

Stellt Daten zur Übertragung in die Warteschlange.

Ereignisse

Hören Sie auf diese Ereignisse mit addEventListener() oder indem Sie einen Ereignis-Listener der oneventname-Eigenschaft dieses Interfaces zuweisen.

close

Wird ausgelöst, wenn eine Verbindung mit einem WebSocket geschlossen wird. Auch verfügbar über die onclose-Eigenschaft.

error

Wird ausgelöst, wenn eine Verbindung mit einem WebSocket aufgrund eines Fehlers geschlossen wurde, z. B. wenn einige Daten nicht gesendet werden konnten. Auch verfügbar über die onerror-Eigenschaft.

message

Wird ausgelöst, wenn Daten über einen WebSocket empfangen werden. Auch verfügbar über die onmessage-Eigenschaft.

open

Wird ausgelöst, wenn eine Verbindung mit einem WebSocket geöffnet wird. Auch verfügbar über die onopen-Eigenschaft.

Beispiele

js
// Create WebSocket connection.
const socket = new WebSocket("ws://localhost:8080");

// Connection opened
socket.addEventListener("open", (event) => {
  socket.send("Hello Server!");
});

// Listen for messages
socket.addEventListener("message", (event) => {
  console.log("Message from server ", event.data);
});

Spezifikationen

Specification
WebSockets
# the-websocket-interface

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
WebSocket
WebSocket() constructor
url parameter allows https, http, and relative URLs
binaryType
bufferedAmount
close
close event
error event
extensions
message event
open event
protocol
Supports protocol as specified by RFC 6455
readyState
send
url
Available in workers

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
See implementation notes.
Requires a vendor prefix or different name for use.
Has more compatibility info.

Siehe auch