INTEGRITY Dokumentace

TransformStream

Kontext

Transform stream se skládá ze dvojice streamů: zapisovatelného streamu, označovaného jako jeho zapisovatelná strana, a čitelného streamu, označovaného jako jeho čitelná strana. Zápisy na zapisovatelné straně zpřístupní nová data ke čtení na straně čitelné.

Workers v současnosti implementuje pouze identity transform stream, tedy typ transform streamu, který všechny bloky zapsané na zapisovatelné straně beze změny předává na stranu čitelnou.


Konstruktor

let { readable, writable } = new TransformStream();

Vlastnosti


IdentityTransformStream

Současná implementace TransformStream na platformě Workers aktuálně neodpovídá Standard Streams a brzy provedeme změny v implementaci, aby odpovídala specifikaci. V rámci přípravy na tuto změnu jsme zavedli IdentityTransformStream třída, která implementuje chování shodné se současnou TransformStream třída. Tento typ streamu předává všechny fragmenty bajtových dat (ve formě TypedArrays) zapsané do zapisovatelné strany na její čitelnou stranu, beze změny.

IdentityTransformStream čitelná strana podporuje čtení s vlastním bufferem (BYOB).

Konstruktor

let { readable, writable } = new IdentityTransformStream();

Vlastnosti


FixedLengthStream

FixedLengthStream je specializací IdentityTransformStream který omezuje celkový počet bajtů, které proud propustí. To je užitečné hlavně proto, že při použití FixedLengthStream pro vytvoření buď Response nebo Request, pevná délka streamu se použije jako Content-Length hlavičky namísto použití chunked encoding, pokud používáte jiný typ streamu. Pokud se streamem zapíšete příliš mnoho nebo příliš málo bajtů, dojde k chybě.

Konstruktor

let { readable, writable } = new FixedLengthStream(1000);

Vlastnosti