WebTransport: datagrams-Eigenschaft

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 in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

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

Die schreibgeschützte Eigenschaft datagrams des WebTransport-Interfaces gibt eine WebTransportDatagramDuplexStream-Instanz zurück, die verwendet werden kann, um Datagramme zu senden und zu empfangen — unzuverlässige Datenübertragung.

"Unzuverlässig" bedeutet, dass die Übertragung von Daten nicht garantiert ist und auch die Reihenfolge des Eintreffens nicht festgelegt ist. Dies ist in einigen Situationen unproblematisch und ermöglicht eine sehr schnelle Lieferung. Beispielsweise möchten Sie möglicherweise regelmäßige Spielzustandsaktualisierungen übermitteln, bei denen jede Nachricht die letzte ersetzt, die angekommen ist, und bei denen die Reihenfolge unwichtig ist.

Wert

Beispiele

Ein ausgehendes Datagramm schreiben

Die WebTransportDatagramDuplexStream.writable-Eigenschaft gibt ein WritableStream-Objekt zurück, in das Sie mithilfe eines Writers Daten schreiben können, um sie an den Server zu übertragen:

js
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);

Ein eingehendes Datagramm lesen

Die WebTransportDatagramDuplexStream.readable-Eigenschaft gibt ein ReadableStream-Objekt zurück, das Sie verwenden können, um Daten vom Server zu empfangen:

js
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
# dom-webtransport-datagrams

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
datagrams

Legend

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

Full support
Full support
No support
No support
User must explicitly enable this feature.

Siehe auch