WritableStreamDefaultWriter.abort()

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The abort() method of the WritableStreamDefaultWriter interface aborts the stream, signaling that the producer can no longer successfully write to the stream and it is to be immediately moved to an error state, with any queued writes discarded.

If the writer is active, the abort() method behaves the same as that for the associated stream (WritableStream.abort()). If not, it returns a rejected promise.

Syntax

var promise = writableStreamDefaultWriter.abort(reason);

Parameters

reason Optional

A DOMString representing a human-readable reason for the abort.

Return value

A Promise, which fulfills with the value given in the reason parameter.

Exceptions

TypeError

The stream you are trying to abort is not a WritableStream, or it is locked.

Examples

const writableStream = new WritableStream({
  write(chunk) {
    ...
  },
  close() {
    ...
  },
  abort(err) {
    ...
  }
}, queuingStrategy);

...

const writer = writableStream.getWriter();

...

// abort the stream when desired
writer.abort.then((reason) => {
  console.log(reason);
})

Specifications

Specification
Streams Standard
# ref-for-default-writer-abort④

Browser compatibility

BCD tables only load in the browser