Это экспериментальная технология
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.

Метод matchAll() интерфейса Cache возвращает Promise, который разрешается в массим всех совпадающих запросов в объекте Cache.

Синтаксис

cache.matchAll(request,{options}).then(function(response) {
  //сделать что-ниьудь с массивом ответов
});

Возвращаемое значение

Promise, который разрешается в массив всех совпадающих запросов в объекте Cache.

Замечание: Cache.match() в основном идентичен Cache.matchAll(), за исключением того, что последний разрешается с response[0] (т.е., первым совпадающим ответом) вместо response (всех совпадающих ответов в массиве).

Параметры

request
Запрос Request, который вы пытаетесь найти в Cache.
options Необязательный
Объект options, разрешающий вам установить особые команды контроля поиска соответствий ключа, выполняемого операцией match. Доступные параметры:
  • ignoreSearch: Булево значение Boolean, которое говорит должен ли  процесс сопоставления ключей игнорировать строку запроса в url.  Если равно true, часть ?value=bar запроса http://foo.com/?value=bar будет игнорироваться при поиске соответствий ключа . По умолчанию равно false.
  • ignoreMethod: Булево значение Boolean, которое, если равно true, предотвращает проверку метода http для запроса Request (обычно разрешены лишь GET и HEAD). По умолчанию равно false.
  • ignoreVary: Булево значение Boolean, которое, когда равно true, говорит процессу сопоставления ключей не проверять соответствие заголовка VARY — т.е., если URL совпадает, то вы получите соответствие независимо от того, содержит ли объект Response заголовок VARY, или нет. По умолчанию равно false.
  • cacheName: Строка DOMString, которая представляет собой имя кеша для поиска. Заметьте, что этот параметр игнорируется методом 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' в этой спецификации.
Рабочий черновик Initial definition.

Совместимость с браузерами

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Базовая поддержка 47.0 [1] 44 (44)[2] Нет 34 Нет
Feature Android Android Webview Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
Базовая поддержка Нет Нет (Да) ? Нет ? Нет 47.0[1]

[1] Параметр options поддерживает только ignoreSearch и cacheName.

[2] Сервис воркеры (и Push) были отключены в Firefox 45 Extended Support Release (ESR.)

Смотрите также

Метки документа и участники

Внесли вклад в эту страницу: utking
Обновлялась последний раз: utking,