🏠 New in Low Baseline Support: Service workers
April 30, 2018
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.
Source features
api.Cache[mdn]api.caches[mdn]api.caches.worker_support[mdn]api.Cache.worker_support[mdn]api.Cache.delete[mdn]api.Cache.keys[mdn]api.Cache.match[mdn]api.Cache.put[mdn]api.CacheStorage[mdn]api.CacheStorage.delete[mdn]api.CacheStorage.has[mdn]api.CacheStorage.keys[mdn]api.CacheStorage.open[mdn]api.CacheStorage.worker_support[mdn]api.Cache.add[mdn]api.Cache.addAll[mdn]api.Cache.matchAll[mdn]api.CacheStorage.match[mdn]api.Client[mdn]api.Client.id[mdn]api.Client.postMessage[mdn]api.Client.url[mdn]api.Clients[mdn]api.Clients.openWindow[mdn]api.ExtendableEvent[mdn]api.ExtendableEvent.waitUntil[mdn]api.FetchEvent[mdn]api.FetchEvent.request[mdn]api.InstallEvent[mdn]api.Navigator.serviceWorker[mdn]api.ServiceWorker[mdn]api.ServiceWorker.postMessage[mdn]api.ServiceWorker.scriptURL[mdn]api.ServiceWorker.state[mdn]api.ServiceWorker.statechange_event[mdn]api.ServiceWorkerContainer[mdn]api.ServiceWorkerContainer.controller[mdn]api.ServiceWorkerContainer.controllerchange_event[mdn]api.ServiceWorkerContainer.getRegistration[mdn]api.ServiceWorkerContainer.message_event[mdn]api.ServiceWorkerContainer.ready[mdn]api.ServiceWorkerContainer.register[mdn]api.ServiceWorkerGlobalScope[mdn]api.ServiceWorkerGlobalScope.activate_event[mdn]api.ServiceWorkerGlobalScope.clients[mdn]api.ServiceWorkerGlobalScope.fetch_event[mdn]api.ServiceWorkerGlobalScope.install_event[mdn]api.ServiceWorkerGlobalScope.message_event[mdn]api.ServiceWorkerRegistration.active[mdn]api.ServiceWorkerRegistration.installing[mdn]api.ServiceWorkerRegistration.scope[mdn]api.ServiceWorkerRegistration.unregister[mdn]api.ServiceWorkerRegistration.updatefound_event[mdn]api.ServiceWorkerRegistration.waiting[mdn]api.ExtendableEvent.ExtendableEvent[mdn]api.ServiceWorkerGlobalScope.skipWaiting[mdn]api.Clients.claim[mdn]api.FetchEvent.respondWith[mdn]api.ServiceWorkerGlobalScope.registration[mdn]api.WindowClient[mdn]api.WindowClient.focus[mdn]api.WindowClient.focused[mdn]api.WindowClient.visibilityState[mdn]api.Clients.matchAll[mdn]api.Clients.matchAll.options_includeUncontrolled_parameter[mdn]api.Client.frameType[mdn]api.FetchEvent.FetchEvent[mdn]api.ServiceWorkerContainer.getRegistrations[mdn]api.ServiceWorkerRegistration.update[mdn]api.FetchEvent.clientId[mdn]api.ExtendableMessageEvent[mdn]api.ExtendableMessageEvent.ExtendableMessageEvent[mdn]api.ExtendableMessageEvent.data[mdn]api.ExtendableMessageEvent.lastEventId[mdn]api.ExtendableMessageEvent.origin[mdn]api.ExtendableMessageEvent.ports[mdn]api.ExtendableMessageEvent.source[mdn]api.Clients.get[mdn]api.ExtendableEvent.waitUntil.async_waitUntil[mdn]api.Client.type[mdn]api.ServiceWorkerRegistration.updateViaCache[mdn]api.CacheStorage.secure_context_required[mdn]api.ServiceWorkerContainer.startMessages[mdn]api.ServiceWorkerRegistration.navigationPreload[mdn]api.FetchEvent.preloadResponse[mdn]api.NavigationPreloadManager[mdn]api.NavigationPreloadManager.disable[mdn]api.NavigationPreloadManager.enable[mdn]api.NavigationPreloadManager.getState[mdn]api.NavigationPreloadManager.setHeaderValue[mdn]api.caches.secure_context_required[mdn]api.WindowClient.navigate[mdn]api.FetchEvent.resultingClientId[mdn]api.FetchEvent.handled[mdn]http.headers.Service-Worker-Navigation-Preload[mdn]api.FetchEvent.respondWith.networkerror_on_same-origin_cors[mdn]api.ServiceWorkerGlobalScope.serviceWorker[mdn]api.ServiceWorkerGlobalScope.messageerror_event[mdn]api.ServiceWorkerContainer.worker_support[mdn]api.WorkerNavigator.serviceWorker[mdn]api.InstallEvent.InstallEvent[mdn]api.InstallEvent.addRoutes[mdn]api.WindowClient.ancestorOrigins[mdn]api.FetchEvent.respondWith.resource_url[mdn]