Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The match()
method of the BackgroundFetchRegistration
interface returns the first matching BackgroundFetchRecord
.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The match()
method of the BackgroundFetchRegistration
interface returns the first matching BackgroundFetchRecord
.
js
match(request) match(request, options)
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
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 http://foo.com/?value=bar
would be ignored when performing a match. It defaults to false
.
ignoreMethod
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
A boolean value. When true
indicates that the VARY
header should be ignored. It defaults to false
.
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 BackgroundFetchRegistration.matchAll()
, except that rather than resolving with an array of all matching records, it resolves with the first matching record only.
InvalidStateError
DOMException
Returned if you call match()
when there are no fetches in progress. This state will be reflected by BackgroundFetchRegistration.recordsAvailable
being set to false
.
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.
js
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); });
Specification |
---|
Background Fetch # background-fetch-registration-match |
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
match |
74 | 79 | No | No | 62 | No | No | 74 | No | 53 | No | 11.0 |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/BackgroundFetchRegistration/match