Experimentell: Dies ist eine experimentelle Technologie
Ãberprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die opened
schreibgeschützte Eigenschaft der WebSocketStream
-Schnittstelle gibt ein Promise
zurück, das mit einem Objekt erfüllt wird, sobald die Socket-Verbindung erfolgreich geöffnet wurde. Dieses Objekt enthält unter anderem eine ReadableStream
- und eine WritableStream
-Instanz, um Daten über die Verbindung zu empfangen und zu senden.
Ein Promise, das mit einem Objekt erfüllt wird, das die folgenden Eigenschaften enthält:
extensions
Ein String, der alle auf den WebSocketStream
angewendeten Erweiterungen darstellt. Solche Erweiterungen sind derzeit nicht definiert, könnten aber in Zukunft existieren. Aktuell wird ein leerer String zurückgegeben.
protocol
Ein String, der das Subprotokoll darstellt, das zum Ãffnen der aktuellen WebSocket-Verbindung verwendet wird (aus den in der protocols
-Option des WebSocketStream()
-Konstruktors angegebenen Optionen ausgewählt). Gibt einen leeren String zurück, wenn kein Subprotokoll verwendet wurde, um die Verbindung zu öffnen (d.h. keine Subprotokoll-Optionen im Konstruktoraufruf enthalten waren).
readable
Eine ReadableStream
-Instanz. Rufen Sie ReadableStream.getReader()
auf, um eine ReadableStreamDefaultReader
-Instanz zu erhalten, die verwendet werden kann, um eingehende WebSocket-Daten zu lesen.
writable
Eine WritableStream
-Instanz. Rufen Sie WritableStream.getWriter()
auf, um eine WritableStreamDefaultWriter
-Instanz zu erhalten, die verwendet werden kann, um Daten an die WebSocket-Verbindung zu schreiben.
Das Promise wird abgelehnt, wenn die WebSocket-Verbindung fehlschlägt.
Beispieleconst wsURL = "wss://127.0.0.1/";
const wss = new WebSocketStream(wsURL);
async function start() {
const { readable, writable, extensions, protocol } = await wss.opened;
const reader = readable.getReader();
const writer = writable.getWriter();
writer.write("ping");
while (true) {
const { value, done } = await reader.read();
if (done) {
break;
}
setTimeout(() => {
writer.write("ping");
}, 5000);
}
}
Siehe Verwendung von WebSocketStream zum Erstellen eines Clients für ein vollständiges Beispiel mit ausführlicher Erklärung.
SpezifikationenDerzeit kein Teil einer Spezifikation. Siehe https://github.com/whatwg/websockets/pull/48 für den Fortschritt der Standardisierung.
Browser-Kompatibilität Siehe auchRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4