Skip to content

Latest commit

 

History

History
59 lines (38 loc) · 2.26 KB

File metadata and controls

59 lines (38 loc) · 2.26 KB
title slug page-type status browser-compat
PeriodicSyncEvent
Web/API/PeriodicSyncEvent
web-api-interface
experimental
api.PeriodicSyncEvent

{{APIRef("Periodic Background Sync")}}{{SeeCompatTable}}{{AvailableInWorkers("service")}}

The PeriodicSyncEvent interface of the {{domxref('Web Periodic Background Synchronization API', '', '', 'nocode')}} provides a way to run tasks in the service worker with network connectivity.

An instance of this event is passed to the {{domxref('ServiceWorkerGlobalScope.periodicsync_event', 'periodicsync')}} handler. This happens periodically, at an interval greater than or equal to that set in the {{domxref('PeriodicSyncManager.register()')}} method. Other implementation-specific factors such as the user's engagement with the site decide the actual interval.

{{InheritanceDiagram}}

Constructor

  • {{domxref("PeriodicSyncEvent.PeriodicSyncEvent", "PeriodicSyncEvent()")}} {{Experimental_Inline}}
    • : Creates a new PeriodicSyncEvent object. This constructor is not typically used. The browser creates these objects itself and provides them to {{domxref('ServiceWorkerGlobalScope.periodicsync_event', 'onperiodicsync')}} callback.

Instance properties

Inherits properties from its parent, {{domxref('ExtendableEvent')}}.

  • {{domxref('PeriodicSyncEvent.tag')}} {{ReadOnlyInline}} {{Experimental_Inline}}
    • : Returns the developer-defined identifier for this PeriodicSyncEvent. Multiple tags can be used by the web app to run different periodic tasks at different frequencies.

Instance methods

Inherits methods from its parent, {{domxref('ExtendableEvent')}}.

Examples

The following example shows how to respond to a periodic sync event in the service worker.

self.addEventListener("periodicsync", (event) => {
  if (event.tag === "get-latest-news") {
    event.waitUntil(fetchAndCacheLatestNews());
  }
});

fetchAndCacheLatestNews is a developer defined function.

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also