BASELINE NowYouCanUse.com
Widely Available Workers
id: service-workers

Service workers

The service worker of a website is a script that runs in its own thread and which acts as local proxy that intercepts network requests from the website. Use a service worker to implement advanced caching strategies, offline support, background tasks, or push notification support on your website.
Baseline Status: Achieved Widely Available on Oct 30, 2020 (Cross-browser Newly Available since Apr 30, 2018).
Desktop Browser Engine Support
Google Chrome
45
Supported
Mozilla Firefox
44
Supported
Apple Safari
11.1
Supported
Microsoft Edge
17
Supported
Mobile Browser Engine Support
Chrome Android
45
Firefox Android
44
Safari iOS
11.3
Specifications and References
MDN Browser Compat Data Keys:
api.Cache api.Cache.add api.Cache.addAll api.Cache.delete api.Cache.keys api.Cache.match api.Cache.matchAll api.Cache.put api.Cache.worker_support api.CacheStorage api.CacheStorage.delete api.CacheStorage.has api.CacheStorage.keys api.CacheStorage.match api.CacheStorage.open api.CacheStorage.secure_context_required api.CacheStorage.worker_support api.Client api.Client.frameType api.Client.id api.Client.postMessage api.Client.type api.Client.url api.Clients api.Clients.claim api.Clients.get api.Clients.matchAll api.Clients.matchAll.options_includeUncontrolled_parameter api.Clients.openWindow api.ExtendableEvent api.ExtendableEvent.ExtendableEvent api.ExtendableEvent.waitUntil api.ExtendableEvent.waitUntil.async_waitUntil api.ExtendableMessageEvent api.ExtendableMessageEvent.ExtendableMessageEvent api.ExtendableMessageEvent.data api.ExtendableMessageEvent.lastEventId api.ExtendableMessageEvent.origin api.ExtendableMessageEvent.ports api.ExtendableMessageEvent.source api.FetchEvent api.FetchEvent.FetchEvent api.FetchEvent.clientId api.FetchEvent.handled api.FetchEvent.preloadResponse api.FetchEvent.request api.FetchEvent.respondWith api.FetchEvent.respondWith.networkerror_on_same-origin_cors api.FetchEvent.respondWith.resource_url api.FetchEvent.resultingClientId api.NavigationPreloadManager api.NavigationPreloadManager.disable api.NavigationPreloadManager.enable api.NavigationPreloadManager.getState api.NavigationPreloadManager.setHeaderValue api.Navigator.serviceWorker api.ServiceWorker api.ServiceWorker.postMessage api.ServiceWorker.scriptURL api.ServiceWorker.state api.ServiceWorker.statechange_event api.ServiceWorkerContainer api.ServiceWorkerContainer.controller api.ServiceWorkerContainer.controllerchange_event api.ServiceWorkerContainer.getRegistration api.ServiceWorkerContainer.getRegistrations api.ServiceWorkerContainer.message_event api.ServiceWorkerContainer.ready api.ServiceWorkerContainer.register api.ServiceWorkerContainer.startMessages api.ServiceWorkerContainer.worker_support api.ServiceWorkerGlobalScope api.ServiceWorkerGlobalScope.activate_event api.ServiceWorkerGlobalScope.clients api.ServiceWorkerGlobalScope.fetch_event api.ServiceWorkerGlobalScope.install_event api.ServiceWorkerGlobalScope.message_event api.ServiceWorkerGlobalScope.registration api.ServiceWorkerGlobalScope.serviceWorker api.ServiceWorkerGlobalScope.skipWaiting api.ServiceWorkerRegistration.active api.ServiceWorkerRegistration.installing api.ServiceWorkerRegistration.navigationPreload api.ServiceWorkerRegistration.scope api.ServiceWorkerRegistration.unregister api.ServiceWorkerRegistration.update api.ServiceWorkerRegistration.updateViaCache api.ServiceWorkerRegistration.updatefound_event api.ServiceWorkerRegistration.waiting api.WindowClient api.WindowClient.ancestorOrigins api.WindowClient.focus api.WindowClient.focused api.WindowClient.navigate api.WindowClient.visibilityState api.WorkerNavigator.serviceWorker api.caches api.caches.secure_context_required api.caches.worker_support http.headers.Service-Worker-Navigation-Preload