FetchEvent: handled property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2022.
Note: This feature is only available inService Workers.
Thehandled property of theFetchEvent interface returns a promise indicating if the event has been handled by the fetch algorithm or not. This property allows executing code after the browser has consumed a response, and is usually used together with thewaitUntil() method.
In this article
Value
APromise that is pending while the event has not been handled, and fulfilled once it has.
Examples
js
addEventListener("fetch", (event) => { event.respondWith( (async function () { const response = await doCalculateAResponse(event.request); event.waitUntil( (async function () { await doSomeAsyncStuff(); // optional // Wait for the event to be consumed by the browser await event.handled; return doFinalStuff(); // Finalize AFTER the event has been consumed })(), ); return response; })(), );});Specifications
| Specification |
|---|
| Service Workers Nightly> # dom-fetchevent-handled> |