跳转到主要内容

Service-Worker-Navigation-Preload header

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](https://developer.mozilla.org/en-US/docs/Glossary/Request%20header)
[Forbidden request header](https://developer.mozilla.org/en-US/docs/Glossary/Forbidden%20request%20header) 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 may be set to any other string value in the service worker, using NavigationPreloadManager.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

Browser compatibility

See also