Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
WebTransportDatagramDuplexStream
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur insicheren Kontexten (HTTPS) in einigen oder allenunterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist inWeb Workers verfügbar.
DasWebTransportDatagramDuplexStream-Interface derWebTransport API repräsentiert einen Duplexstream, der für den unzuverlässigen Transport von Datagrammen zwischen Client und Server verwendet werden kann. Es bietet Zugriff auf einenReadableStream zum Lesen eingehender Datagramme, einenWritableStream zum Schreiben ausgehender Datagramme sowie verschiedene Einstellungen und Statistiken in Bezug auf den Stream.
Darauf wird über dieWebTransport.datagrams-Eigenschaft zugegriffen.
"Unzuverlässig" bedeutet, dass die Datenübertragung nicht garantiert ist, noch ist die Ankunft in einer bestimmten Reihenfolge gewährleistet. Dies ist in einigen Situationen akzeptabel und bietet eine sehr schnelle Lieferung. Beispielsweise könnten Sie regelmäßige Spielstatus-Updates übertragen wollen, bei denen jede Nachricht die letzte eingehende überschreibt und die Reihenfolge nicht wichtig ist.
In diesem Artikel
Instanzeigenschaften
incomingHighWaterMarkRuft den High-Water-Mark für eingehende Datenblöcke ab oder setzt diesen — dies ist die maximale Größe, in Blöcken, die die interne Warteschlange des eingehenden
ReadableStreamerreichen kann, bevor sie als voll betrachtet wird. Weitere Informationen finden Sie unterInterne Warteschlangen und Warteschlangenstrategien.incomingMaxAgeRuft das maximale Alter für eingehende Datagramme in Millisekunden ab oder setzt dieses. Gibt
nullzurück, wenn kein maximales Alter festgelegt wurde.maxDatagramSizeSchreibgeschütztGibt die maximal zulässige Größe ausgehender Datagramme in Bytes zurück, die an
writablegeschrieben werden können.outgoingHighWaterMarkRuft den High-Water-Mark für ausgehende Datenblöcke ab oder setzt diesen — dies ist die maximale Größe, in Blöcken, die die interne Warteschlange des ausgehenden
WritableStreamerreichen kann, bevor sie als voll betrachtet wird. Weitere Informationen finden Sie unterInterne Warteschlangen und Warteschlangenstrategien.outgoingMaxAgeRuft das maximale Alter für ausgehende Datagramme in Millisekunden ab oder setzt dieses. Gibt
nullzurück, wenn kein maximales Alter festgelegt wurde.readableSchreibgeschütztGibt eine
ReadableStream-Instanz zurück, die verwendet werden kann, um eingehende Datagramme aus dem Stream zu lesen.writableSchreibgeschütztVeraltetGibt eine
WritableStream-Instanz zurück, die verwendet werden kann, um ausgehende Datagramme in den Stream zu schreiben.
Beispiele
>Schreiben ausgehender Datagramme
Diewritable-Eigenschaft gibt einWritableStream-Objekt zurück, in das Sie Daten mit einem Schreibgerät schreiben können, um sie an den Server zu übertragen:
const writer = transport.datagrams.writable.getWriter();const data1 = new Uint8Array([65, 66, 67]);const data2 = new Uint8Array([68, 69, 70]);writer.write(data1);writer.write(data2);Lesen eingehender Datagramme
Diereadable-Eigenschaft gibt einReadableStream-Objekt zurück, das Sie verwenden können, um Daten vom Server zu empfangen:
async function readData() { const reader = transport.datagrams.readable.getReader(); while (true) { const { value, done } = await reader.read(); if (done) { break; } // value is a Uint8Array. console.log(value); }}Spezifikationen
| Specification |
|---|
| WebTransport> # webtransportdatagramduplexstream> |