Cache.matchAll()

Cache インターフェイスの matchAll() メソッドは、Cache オブジェクト内の一致するすべてのレスポンスの配列に解決される Promise を返します。

構文

cache.matchAll(request, {options}).then(function(response) {
  // レスポンスの配列で何かをする
});

パラメーター

request 省略可
Cache 内でレスポンスを見つけようとしている Request。 これは、Request オブジェクトまたは URL です。 この引数を省略すると、このキャッシュ内のすべてのレスポンスのコピーが取得されます。
options 省略可
実行する照合の特定の制御オプションを設定できるオプションオブジェクト。 使用可能なオプションは次のとおりです。
  • ignoreSearch: 照合操作で URL のクエリ文字列を無視するかどうかを指定する Booleantrue に設定すると、http://foo.com/?value=bar?value=bar 部分を、照合の実行時に無視します。 デフォルトは false です。
  • ignoreMethod: true に設定すると、照合操作が Request HTTP メソッドを検証しないようにする Boolean(通常、GET および HEAD のみが許可されます)。 デフォルトは false です。
  • ignoreVary: true に設定すると、VARY ヘッダーの照合を実行しないように照合操作に指示する Boolean。 つまり、URL が一致する場合、Response オブジェクトに VARY ヘッダーがあるかどうかに関係なく一致します。 デフォルトは false です。

戻り値

Cache オブジェクト内のすべての一致するレスポンスの配列に解決される Promise

: Cache.match() は、一致するすべてのレスポンスの配列で解決するのではなく、最初に一致するレスポンスのみ(つまり、response[0])で解決することを除いて、基本的に Cache.matchAll() と同じです。

caches.open('v1').then(function(cache) {
  cache.matchAll('/images/').then(function(response) {
    response.forEach(function(element, index, array) {
      cache.delete(element);
    });
  });
})

仕様

仕様 状態 コメント
Service Workers
Cache: matchAll の定義
草案 初期定義

ブラウザーの互換性

BCD tables only load in the browser

関連情報