A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://developer.mozilla.org/ja/docs/Web/API/ReadableStreamDefaultReader below:

ReadableStreamDefaultReader - Web API | MDN

ReadableStreamDefaultReader

Baseline Widely available *

ReadableStreamDefaultReader はストリーム API のインターフェイスで、ネットワークから提供されたストリームデータ(フェッチリクエストなど)を読み取るために使用できる既定のリーダーを表します。

ReadableStreamDefaultReader は、任意の種類の基盤ソースを持つ ReadableStream からの読み取りに使用することができます(基盤バイトソースを持つ読み取り可能なストリームにのみ使用することができる ReadableStreamBYOBReader とは異なります)。

ただし、基盤ソースからのゼロコピー移譲は、バッファーを自動割り当てするバイトソースにのみ対応していることに注意してください。 言い換えれば、ストリームは構築時に、type="bytes" と autoAllocateChunkSize の両方が指定されたものでなければなりません。他にも基盤ソースがある場合、ストリームは常に内部キューからのデータで読み取りリクエストを満たします。

コンストラクター
ReadableStreamDefaultReader()

ReadableStreamDefaultReader オブジェクトのインスタンスを作成して返します。

インスタンスプロパティ
ReadableStreamDefaultReader.closed 読取専用

ストリーミングプロセスの終了に応答するコードを記述できます。 ストリームが閉じられた場合、またはリーダーのロックが解除された場合に履行されるプロミスを返します。 ストリームがエラーの場合は拒否されます。

インスタンスメソッド
ReadableStreamDefaultReader.cancel()

ストリームをキャンセルし、コンシューマーがストリームに興味を失ったことを通知します。 提供された引数 reason は、基盤ソースに与えられ、使用する場合もしない場合もあります。

ReadableStreamDefaultReader.read()

ストリームの内部キュー内の次のチャンクへのアクセスを提供するプロミスを返します。

ReadableStreamDefaultReader.releaseLock()

ストリームのリーダーのロックを解除します。

例

次の例では、別のリソースから取得した HTML の断片をブラウザーにストリーミングするために、人工的な Response を作成します。

これは Uint8Array と組み合わせた ReadableStream の使用方法を示します。

fetch("https://www.example.org/").then((response) => {
  const reader = response.body.getReader();
  const stream = new ReadableStream({
    start(controller) {
      // 次の関数は各データチャンクを処理します
      function push() {
        // done は Boolean で、value は Uint8Array です
        return reader.read().then(({ done, value }) => {
          // 読み取るデータはもうありませんか?
          if (done) {
            // データの送信が完了したことをブラウザーに伝えます
            controller.close();
            return;
          }

          // データを取得し、コントローラー経由でブラウザーに送信します
          controller.enqueue(value);
          push();
        });
      }

      push();
    },
  });

  return new Response(stream, { headers: { "Content-Type": "text/html" } });
});
仕様書 ブラウザーの互換性 関r根情報

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4