const { readable, writable } = new TransformStream(transformer?: any, writableStrategy?: WritableStrategy);
パラメータ名 | タイプ | 必須 | 説明 |
transformer | any | いいえ | 現時点ではサポートされていません。値を渡しても有効にならず、このパラメータは自動的に無視されます。 |
writableStrategy | いいえ | 書き込み可能端末のポリシー設定。 |
属性名 | タイプ | 必須 | 説明 |
highWaterMark | number | はい | 書き込み側バッファサイズはバイト単位で、デフォルト値は32K、最大値は256Kです。最大値を超えると自動的に256Kに調整されます。 |
readonly readable: ReadableStream;
readonly writable: WritableStream;
async function handleEvent(event) {// 読み取り可能な端と書き込み可能な端を生成します。const { readable, writable } = new TransformStream();// リモートリソースを取得します。const response = await fetch('https://www.tencentcloud.com/');// クライアントへのストリーミングレスポンスです。response.body.pipeTo(writable);return new Response(readable, response);}addEventListener('fetch', (event) => {event.respondWith(handleEvent(event));});
const { readable, writable } = new FixedLengthStream(length: number | bigint);
属性名 | タイプ | 必須 | 説明 |
length | number | bigint | はい | ストリームの合計バイト数を指定します。最大値は2^53 - 1です。 |
async function handleEvent(event) {// 読み取り可能な端と書き込み可能な端を生成します。const { readable, writable } = new FixedLengthStream(12);const writer = writable.getWriter();// データを複数回書き込みます。writer.write("Hello");writer.write(" ");writer.write("World");writer.write("!");writer.close();writer.releaseLock();return event.respondWith(new Response(readable));}addEventListener('fetch', event => {handleEvent(event);});
フィードバック