Skip to content

ReadableStream DefaultReader

Background

A reader is used when you want to read from a ReadableStream, rather than piping its output to a WritableStream.

A ReadableStreamDefaultReader is not instantiated via its constructor. Rather, it is retrieved from a ReadableStream:

const { readable, writable } = new TransformStream();
const reader = readable.getReader();

Properties

  • reader.closed : Promise

    • A promise indicating if the reader is closed. The promise is fulfilled when the reader stream closes and is rejected if there is an error in the stream.

Methods

  • read() : Promise

    • A promise that returns the next available chunk of data being passed through the reader queue.
  • cancel(reasonstringoptional) : void

    • Cancels the stream. reason is an optional human-readable string indicating the reason for cancellation. reason will be passed to the underlying source’s cancel algorithm -- if this readable stream is one side of a TransformStream, then its cancel algorithm causes the transform’s writable side to become errored with reason.
  • releaseLock() : void

    • Releases the lock on the readable stream. A lock cannot be released if the reader has pending read operations. A TypeError is thrown and the reader remains locked.