Firefox Tomorrow

web api instance method

BackgroundFetchRegistration: match() method

View on MDN ↗

Limited availabilityAvailable in workers

The match() method of the BackgroundFetchRegistration interface returns the first matching BackgroundFetchRecord.

Syntax

match(request)
match(request, options)

Parameters

  • request
    • : The Request for which you are attempting to find records. This can be a Request object or a URL.
  • options Optional
    • : An object that sets options for the match operation. The available options are:
      • ignoreSearch Optional
        • : A boolean value that specifies whether to ignore the query string in the URL. For example, if set to true the ?value=bar part of https://example.com/?value=bar would be ignored when performing a match. It defaults to false.
      • ignoreMethod Optional
        • : A boolean value. When true, prevents matching operations from validating the Request http method. If false (the default) only GET and HEAD are allowed.
      • ignoreVary Optional
        • : A boolean value. When true indicates that the Vary header should be ignored. It defaults to false.

Return value

A Promise that resolves with the first BackgroundFetchRecord that matches the request or undefined if no match is found.

[!NOTE] BackgroundFetchRegistration.match() is basically identical to matchAll(), except that rather than resolving with an array of all matching records, it resolves with the first matching record only.

Exceptions

  • InvalidStateError DOMException
    • : Returned if you call match() when there are no fetches in progress. This state will be reflected by recordsAvailable being set to false.

Examples

In this example we look for a record with the URL “/ep-5.mp3”. If a BackgroundFetchRecord is found then we can return some information about it.

bgFetch.match("/ep-5.mp3").then(async (record) => {
  if (!record) {
    console.log("No record found");
    return;
  }

  console.log(`Here's the request`, record.request);
  const response = await record.responseReady;
  console.log(`And here's the response`, response);
});

Specifications

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.