Spec-Zone.ru › Web APIs

ReadableByteStreamController: свойство byobRequest

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

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

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

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

Свойство byobRequest только для чтения интерфейса ReadableByteStreamController возвращает текущий запрос BYOB или null, если запросов нет.

Подлежащий байтовый источник должен проверять это свойство и использовать его для записи данных в поток, если оно существует (а не использовать ReadableByteStreamController.enqueue()). Это приведет к эффективному обмену данными нулевого размера потребителю.

Значение

Объект экземпляра ReadableStreamBYOBRequest или null.

Примеры

Пример в Использование потоков байтов для чтения > Создание потока байтов для чтения из сокета демонстрирует, как использовать byobRequest для передачи данных (если они существуют), в противном случае копируя данные во внутренние очереди потока с помощью ReadableByteStreamController.enqueue().

Релевантный код приведён ниже. Если byobRequest существует, данные считываются в controller.byobRequest.view, а затем вызывается ReadableStreamBYOBRequest.respond() для сигнализации о количестве данных, готовых к передаче.

if (controller.byobRequest) {
  const v = controller.byobRequest.view;
  bytesRead = socket.readInto(v.buffer, v.byteOffset, v.byteLength);
  if (bytesRead === 0) {
    controller.close();
  }
  controller.byobRequest.respond(bytesRead);
} else {
  // Write to data using enqueue().
}

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

Спецификация
Потоки
# ref-for-rbs-controller-byob-request②

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
byobRequest 89 89 102 75 Нет 89 102 63 Нет 15.0 89

См. также

  • Использование потоков байтов для чтения
  • ReadableByteStreamController

© 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/ReadableByteStreamController/byobRequest

Spec-Zone.ru

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