BackgroundFetchRegistration.match()
The match()
method of the BackgroundFetchRegistration
interface returns the first matching BackgroundFetchRecord
.
Syntax
let record = BackgroundFetchRegistration.match(request, options);
Parameters
request
-
The
Request
for which you are attempting to find records. This can be aRequest
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 ofhttp://foo.com/?value=bar
would be ignored when performing a match. It defaults tofalse
. ignoreMethod
-
A boolean value. When
true
, prevents matching operations from validating theRequest
http
method. Iffalse
(the default) onlyGET
andHEAD
are allowed. ignoreVary
-
A boolean value. When
true
indicates that theVARY
header should be ignored. It defaults tofalse
.
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 BackgroundFetchRegistration.matchAll()
, except that rather than resolving with an array of all matching records, it resolves with the first matching record only.
Exceptions
InvalidStateError
-
A
DOMException
indicating that you calledmatch()
when there are no fetches in progress. This state will be reflected byBackgroundFetchRegistration.recordsAvailable
being set tofalse
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
Specification |
---|
Background Fetch # background-fetch-registration-match |
Browser compatibility
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–2021 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