Cache.matchAll()
構文
js
matchAll()
matchAll(request)
matchAll(request, options)
引数
request省略可-
Cache内でレスポンスを見つけようとしているRequest。 これは、Requestオブジェクトまたは URL です。この引数を省略すると、このキャッシュ内のすべてのレスポンスのコピーが取得されます。 options省略可-
実行する照合の特定の制御オプションを設定できるオプションオブジェクト。 使用可能なオプションは次のとおりです。
ignoreSearch-
論理値で、照合操作で URL のクエリー文字列を無視するかどうかを指定します。
trueに設定すると、http://foo.com/?value=barの?value=bar部分を、照合の実行時に無視します。 既定値はfalseです。 ignoreMethod-
論理値で、
trueに設定すると、照合操作でRequestのhttpメソッドを検証しないようにします(通常は、GETおよびHEADのみが許可されます)。 既定値はfalseです。 ignoreVary-
論理値で、
trueに設定すると、VARYヘッダーの照合を実行しないように照合操作に指示します。 つまり、URL が一致する場合、ResponseオブジェクトにVARYヘッダーがあるかどうかに関係なく一致します。 既定値はfalseです。
返値
Cache オブジェクト内のすべての一致するレスポンスの配列に解決される Promise。
メモ: Cache.match() は、一致するすべてのレスポンスの配列で解決するのではなく、最初に一致するレスポンスのみ(つまり、response[0])で解決することを除いて、基本的に Cache.matchAll() と同じです。
例
以下の例では、 v1 キャッシュにある、URL / に一致するすべての項目を、潜在的な引数も含めて削除しています。{ ignoreSearch: true } を使用することで、 matchAll を使用すると、 / だけでなく /?value=bar も取得することができます。
js
caches.open("v1").then((cache) => {
cache.matchAll("/", { ignoreSearch: true }).then((responses) => {
for (const response of responses) {
cache.delete(response);
}
});
});
仕様書
| Specification |
|---|
| Service Workers # cache-matchall |
ブラウザーの互換性
BCD tables only load in the browser