Spec-Zone.ru › Web APIs

WebTransport: свойство datagrams

Ограниченная доступность

Эта функция не относится к Baseline, так как она не работает во всех распространённых браузерах.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.

Примечание: Эта функция доступна в Web Workers.

Толковаемое только для чтения свойство datagrams интерфейса WebTransport возвращает экземпляр WebTransportDatagramDuplexStream, который можно использовать для отправки и получения датаграмм — ненадежной передачи данных.

«Ненадёжная» означает, что передача данных не гарантирована, ни порядок прибытия. Это подходит в некоторых ситуациях и обеспечивает очень быструю доставку. Например, вы можете передавать регулярные обновления состояния игры, где каждое сообщение заменяет предыдущее прибывшее, а порядок не имеет значения.

Значение

Объект WebTransportDatagramDuplexStream.

Примеры

Отправка исходящей датаграммы

Свойство WebTransportDatagramDuplexStream.writable возвращает объект WritableStream, в который можно записать данные с помощью writer для передачи на сервер:

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

Чтение входящей датаграммы

Свойство WebTransportDatagramDuplexStream.readable возвращает объект ReadableStream, который можно использовать для получения данных от сервера:

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

Спецификации

Спецификация
WebTransport
# dom-webtransport-datagrams

Совместимость браузеров

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
datagrams 97 97 114 83 Нет 97 114 68 Нет 18.0 97

См. также

  • Использование WebTransport
  • API WebSockets
  • API потоков
  • WebTransport поверх HTTP/3

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebTransport/datagrams

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API