Note: This feature is available in Web Workers.
The register() method of the SyncManager interface registers a synchronization event, triggering a sync event inside the associated service worker as soon as network connectivity is available.
register(tag)tagAn identifier for this synchronization event. This will be the value of the tag property of the SyncEvent that gets passed into the service worker's sync event handler.
A Promise that resolves to undefined.
InvalidStateError DOMExceptionThrown if current service worker is not active.
NotAllowedError DOMExceptionThrown if background sync has been disabled by the user.
The following asynchronous function registers a background sync from a browsing context:
async function syncMessagesLater() {
const registration = await navigator.serviceWorker.ready;
try {
await registration.sync.register("sync-messages");
} catch {
console.log("Background Sync could not be registered!");
}
}