This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

BackgroundFetchRegistration.match()

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

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

Метод match() интерфейса BackgroundFetchRegistration возвращает первое совпадение BackgroundFetchRecord.

Синтаксис

js
match(request);
match(request, options);

Параметры

request

Request для которого вы пытаетесь найти записи. Может быть объектом Request или URL.

options Необязательный

Объект, который устанавливает параметры для операции match. Доступные параметры:

ignoreSearch

Булево значение, которое определяет нужно ли игнорировать строку поиска в URL. Например, если параметр установлен как true, то подстрока ?value=bar, которая является частью http://foo.com/?value=bar, будет игнорироваться при выполении сопоставления. Значение по умолчанию - false.

ignoreMethod

Булево значение. Если оно установлено как true, то операциям сопоставления запрещается проверять метод http объекта Request. Если false (значение по умолчанию) только GET и HEAD разрешены.

ignoreVary

Булево значение. Когда true сигнализирует, что заголовок VARY должен быть проигнорирован. Значение по умолчанию - false.

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

Promise результатом обработки которого будет первый BackgroundFetchRecord, который соответствует запросу или undefined, если соответствий не найдено.

Note: BackgroundFetchRegistration.match() в основном идентичен BackgroundFetchRegistration.matchAll(), за исключением того, что вместо возвращения массива всех совпадений, он возвращает только первое совпадение.

Исключения

InvalidStateError DOMException

Возвращается при вызове match() в тот момент, когда нет запросов в процессе выполнения. Это состояние будет отражено установкой флага BackgroundFetchRegistration.recordsAvailable как false.

Примеры

В этом примере мы ищем запись с URL "/ep-5.mp3". Если BackgroundFetchRecord найдена, то мы можем вернуть некоторую информацию ней.

js
bgFetch.match("/ep-5.mp3").then(async (record) => {
  if (!record) {
    console.log("Запись не найдена");
    return;
  }

  console.log(`Запрос`, record.request);
  const response = await record.responseReady;
  console.log(`Ответ`, response);
});

Спецификации

Specification
Background Fetch
# background-fetch-registration-match

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