ServiceWorkerRegistration: updateViaCache property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The updateViaCache
read-only property of the ServiceWorkerRegistration
interface returns the value of the setting used to determine the circumstances in which the browser will consult the HTTP cache when it tries to update the service worker or any scripts that are imported via importScripts()
.
Value
Returns one of the following values:
imports
, meaning the HTTP cache is not consulted for updates to the service worker script, but is consulted for scripts imported usingimportScripts()
. This is the default value.all
, meaning the HTTP cache is consulted for updates to the service worker script and for scripts imported usingimportScripts()
.none
, meaning the HTTP cache is never consulted.
Examples
The following example shows the use of updateViaCache.
js
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