NavigationPreloadManager: setHeaderValue() Methode
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Dieses Feature ist verfügbar in Web Workers.
Die setHeaderValue()
Methode der NavigationPreloadManager
Schnittstelle setzt den Wert des Service-Worker-Navigation-Preload
Headers, der mit Anfragen gesendet wird, die aus einem fetch()
Vorgang während des Vorladens von Service Worker-Navigationen resultieren.
Sie gibt ein leeres Promise
zurück, das mit undefined
aufgelöst wird.
Das Vorhandensein des Service-Worker-Navigation-Preload
Headers in Vorladeanforderungen ermöglicht es Servern, die zurückgegebene Ressource für Vorladeabfragen anders zu konfigurieren als für normale Abfragen.
Die Standardanweisung ist auf true
gesetzt: Diese Methode ermöglicht die Möglichkeit, mehrere unterschiedliche Antworten auf Vorladeanfragen zu konfigurieren.
Hinweis: Wenn durch das Setzen dieses Headers eine andere Antwort resultieren kann, muss der Server Vary: Service-Worker-Navigation-Preload
setzen, um sicherzustellen, dass die unterschiedlichen Antworten zwischengespeichert werden.
Syntax
setHeaderValue(value)
Parameter
value
-
Ein beliebiger String-Wert, den der Zielserver verwendet, um zu bestimmen, was für die angeforderte Ressource zurückgegeben werden soll.
Rückgabewert
Ausnahmen
InvalidStateError
DOMException
-
Es gibt keinen aktiven Worker, der mit der Registrierung verbunden ist, zu der dieser
NavigationPreloadManager
gehört.
Beispiele
Der folgende Code demonstriert, wie der Wert gesetzt werden könnte.
navigator.serviceWorker.ready
.then((registration) =>
registration.navigationPreload.setHeaderValue(newValue),
)
.then(() => console.log("Done!"))
.catch((e) =>
console.error(`NavigationPreloadManager not supported: ${e.message}`),
);
Spezifikationen
Specification |
---|
Service Workers # dom-navigationpreloadmanager-setheadervalue |
Browser-Kompatibilität
BCD tables only load in the browser