ReadableStreamDefaultReader
A interface ReadableStreamDefaultReader do Azion Runtime: o construtor, a propriedade closed e os métodos que leem, cancelam e liberam um stream.
A interface ReadableStreamDefaultReader é o reader padrão da Streams API do Azion Runtime. Ela lê os dados de um stream que vem da rede, como o corpo de uma resposta a uma requisição fetch(). Um ReadableStreamBYOBReader funciona apenas com um stream que tem uma fonte de bytes, mas um ReadableStreamDefaultReader lê de qualquer tipo de fonte de ReadableStream. Para mais informações, consulte ReadableStreamDefaultReader na MDN Web Docs.
Construtor
O construtor ReadableStreamDefaultReader() cria e retorna um reader para o stream que você passa para ele:
O método getReader() de um ReadableStream também retorna um ReadableStreamDefaultReader e bloqueia o stream para ele.
Propriedades
| Propriedade | Tipo | Descrição |
|---|---|---|
closed | Promise | É cumprida quando o stream é encerrado. É rejeitada quando o stream lança um erro ou quando o bloqueio do reader é liberado. Use-a para executar código quando o stream termina. |
Métodos
| Método | Descrição |
|---|---|
reader.cancel(reason) | Retorna uma promise que resolve quando o stream é cancelado. Uma chamada sinaliza que o consumidor perdeu o interesse no stream. A fonte subjacente recebe reason e pode usá-lo ou ignorá-lo. |
reader.read() | Retorna uma promise que dá acesso ao próximo chunk da fila interna do stream, como um objeto com value e done. Depois do último chunk, done é true e value é undefined. |
reader.releaseLock() | Libera o bloqueio do reader sobre o stream. Depois da chamada, a propriedade locked do stream é false. |
Exemplo
Este handler busca uma página, lê o corpo dela um chunk de cada vez com um reader e adiciona cada chunk a um stream que ele constrói. Ele retorna esse stream como o corpo de um Response com um header Content-Type HTML:
A resposta que a function retorna tem estes valores: o status, o header content-type, o tamanho do corpo em caracteres e os primeiros 15 caracteres do corpo: