ServiceWorkerRegistration: updateViaCache property

The updateViaCache read-only property of the ServiceWorkerRegistration interface updates the cache using the mode specified in the call to ServiceWorkerContainer.register. Requests for importScripts still go via the HTTP cache. updateViaCache offers control over this behavior.

Value

Returns one of the following values:

  • imports, meaning the HTTP cache is not consulted for update of the service worker, but is consulted for importScripts.
  • all, meaning the HTTP cache is consulted in both cases
  • none, meaning the HTTP cache is never consulted.

Examples

The following example shows the use of updateViaCache.

if ("serviceWorker" in navigator) {
  navigator.serviceWorker
    .register("/service-worker.js", {
      updateViaCache: "none",
    })
    .then((registration) => {
      registration.addEventListener("updatefound", () => {
        // If updatefound is fired, it means that there's
        // a new service worker being installed.
        console.log(`Value of updateViaCache: ${registration.updateViaCache}`);
      });
    })
    .catch((error) => {
      console.error(`Service worker registration failed: ${error}`);
    });
}

Specifications

Specification
Service Workers
# service-worker-registration-updateviacache

Browser compatibility

BCD tables only load in the browser

See also