Service Worker mit Google Workbox

Was sind Service Worker?

Service Worker sind Scripts die separat von der Website und im Hintergrund des Browsers laufen.

Grundsätzlich werden folgende Features mit Service workern realisiert:

Service Worker vs PWA?

Service Worker und PWAs sind keine unterschiedlichen dinge man muss an sich nur verstehen was mit PWA gemeint ist.
In PWAs stellen Service Worker nämlich den Kern dar.
Der Service Worker ist hier für Techniken wie resource-caching und Push notifications verantwortlich.
Kurz gesagt ohne Service Worker würde das ganze Konzept einer PWA nicht funktionieren.

Was sind denn nun diese PWAs?

PWA steht für progressive Web Apps an sich handelt es sich bei der Definition PWA um ein Feature Set.
Die Features die in PWAs definiert werden sollen Webseiten die Möglichkeit bieten sich mehr wie native mobile Apps zu verhalten.
Das Progressive in PWA steht für "Progressive enhancement", das heißt, man kann sich aussuchen wie viele und welche Features verwendet, man muss nicht alle Features aber man könnte es.
Somit sind Webseiten, die nur von einem der Features gebrauch machen auch progressive Web Apps.

Was mach Googles Workbox?

Google Workbox fungiert als kleine Library um das Caching mit Service Workern zu vereinfachen.
Es gibt hier mehrere vorgefertigte Methoden oder "Strategien" wie man cachen kann.

Wie Funktionieren Service Worker?

Test

Welche Browser Unterstützen Service Worker?

Test

Quellen:

https://developers.google.com/web/ilt/pwa/introduction-to-service-worker-slides

https://developers.google.com/web/tools/workbox/

https://www.udemy.com/tutorial/progressive-web-app-pwa-the-complete-guide/what-are-progressive-web-apps/

Beispiele:

Code

Example

Fallback Images

Static Images

Test Test

External Images

Test

Große Bilder

Test Test Test Test Test Test Test Test Test Test Test Test Test Test