System Design · Junior · Frage 50 von 75
Wie sendet man Analytics beim Schließen der Seite, ohne die Anfrage zu verlieren?
- 1Mit
navigator.sendBeaconoderfetchmitkeepalive: true - 2Mit einem
setTimeoutvon 5 Sekunden nach dem Schließen des Tabs - 3Mit einem normalen
fetchin einembeforeunload-Handler
Antwort zeigen
Richtige Antwort: Mit navigator.sendBeacon oder fetch mit keepalive: true
Erklärung
Eine normale Anfrage beim Entladen der Seite kann abgebrochen werden. sendBeacon reiht im Browser einen kleinen POST ein und liefert ihn im Hintergrund aus. Besser sendet man bei visibilitychange (wenn die Seite verborgen wird), da unload unzuverlässig feuert.