Service-Worker-Navigation-Preload
The HTTP Service-Worker-Navigation-Preload
request header indicates that the request was the result of a fetch()
operation made during service worker navigation preloading.
It allows a server to respond with a different resource than for a normal fetch()
.
If a different response may result from setting this header, the server must include a Vary: Service-Worker-Navigation-Preload
header in responses to ensure that different responses are cached.
For more information see NavigationPreloadManager.setHeaderValue()
(and NavigationPreloadManager
).
Header type | Request header |
---|---|
Forbidden header name | No |
Syntax
Service-Worker-Navigation-Preload: <value>
Directives
<value>
-
An arbitrary value that indicates what data should be sent in the response to the preload request. This defaults to
true
. It maybe set to any other string value in the service worker, usingNavigationPreloadManager.setHeaderValue()
.
Examples
Service worker navigation preloading headers
The following request header is sent by default in navigation preload requests:
Service-Worker-Navigation-Preload: true
The service worker can set a different header value using NavigationPreloadManager.setHeaderValue()
.
For example, in order to request that a fragment of the requested resource be returned in JSON format, the value could be set with the string json_fragment1
.
Service-Worker-Navigation-Preload: json_fragment1
Specifications
Specification |
---|
Service Workers # handle-fetch |
Browser compatibility
BCD tables only load in the browser
See also
- HTTP Caching: Vary and
Vary
header - Service Worker API