The match()
method of the BackgroundFetchRegistration
interface returns the first matching BackgroundFetchRecord
.
BackgroundFetchRegistration.match()
Syntax
match(request) 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
DOMException
-
Returned if you call
match()
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