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.
Das WebSocketStream
-Interface der WebSockets-API ist eine versprechenbasierte API zum Verbinden mit einem WebSocket-Server. Es verwendet Streams, um Daten über die Verbindung zu senden und zu empfangen, und kann daher automatisch von der Stream-Gegenstromkontrolle profitieren, die die Geschwindigkeit des Lesens oder Schreibens reguliert, um Engpässe in der Anwendung zu vermeiden.
WebSocketStream()
Experimentell
Erstellt eine neue Instanz des WebSocketStream
-Objekts.
url
Schreibgeschützt Experimentell
Gibt die URL des WebSocket-Servers zurück, mit dem die WebSocketStream
-Instanz erstellt wurde.
closed
Schreibgeschützt Experimentell
Gibt ein Promise
zurück, das mit einem Objekt erfüllt wird, sobald die Socket-Verbindung geschlossen ist. Das Objekt enthält den SchlieÃscode und den Grund, wie er vom Server gesendet wurde.
opened
Schreibgeschützt Experimentell
Gibt ein Promise
zurück, das mit einem Objekt erfüllt wird, sobald die Socket-Verbindung erfolgreich geöffnet wurde. Unter anderem enthält dieses Objekt eine Instanz von ReadableStream
und WritableStream
zum Empfangen und Senden von Daten über die Verbindung.
close()
Experimentell
SchlieÃt die WebSocket-Verbindung.
const output = document.querySelector("#output");
function writeToScreen(message) {
const pElem = document.createElement("p");
pElem.textContent = message;
output.appendChild(pElem);
}
if (!("WebSocketStream" in self)) {
writeToScreen("Your browser does not support WebSocketStream");
} else {
const wsURL = "ws://127.0.0.1/";
const wss = new WebSocketStream(wsURL);
console.log(wss.url);
async function start() {
const { readable, writable, extensions, protocol } = await wss.opened;
writeToScreen("CONNECTED");
closeBtn.disabled = false;
const reader = readable.getReader();
const writer = writable.getWriter();
writer.write("ping");
writeToScreen("SENT: ping");
while (true) {
const { value, done } = await reader.read();
writeToScreen(`RECEIVED: ${value}`);
if (done) {
break;
}
setTimeout(() => {
writer.write("ping");
writeToScreen("SENT: ping");
}, 5000);
}
}
start();
}
Sehen Sie Using WebSocketStream to write a client für ein vollständiges Beispiel mit umfassender Erklärung.
SpezifikationenDerzeit nicht Teil irgendeiner Spezifikation. Siehe https://github.com/whatwg/websockets/pull/48 für den Standardisierungsfortschritt.
Browser-Kompatibilität Siehe auch MDN-Feedback-Box War diese Ãbersetzung hilfreich?Diese Seite wurde automatisch aus dem Englischen übersetzt.
RetroSearch 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