NavigationPreloadManager: getState() 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 getState()-Methode des NavigationPreloadManager-Interfaces gibt ein Promise zurück, das in ein Objekt aufgelöst wird. Dieses Objekt enthält Eigenschaften, die angeben, ob das Vorladen aktiviert ist und welcher Wert im Service-Worker-Navigation-Preload HTTP-Header gesendet wird.

Syntax

js
getState()

Parameter

Keine.

Rückgabewert

Ein Promise, das in ein Objekt aufgelöst wird, welches die folgenden Eigenschaften hat:

enabled

true, wenn das Vorladen aktiviert ist, und false andernfalls.

headerValue

Ein String, der den Wert enthält, der im Service-Worker-Navigation-Preload HTTP-Header nach einem Vorlade-fetch() gesendet wird. Dieser Wert ist standardmäßig true, es sei denn, er wurde mit NavigationPreloadManager.setHeaderValue() geändert.

Ausnahmen

InvalidStateError DOMException

Es gibt keinen aktiven Worker, der mit der Registrierung verbunden ist, zu der dieser NavigationPreloadManager gehört.

Beispiele

Der untenstehende Code zeigt eine Anfrage nach dem aktuellen Zustand, die ausgeführt wird, sobald der Service Worker bereit ist.

js
navigator.serviceWorker.ready
  .then((registration) => registration.navigationPreload.getState())
  .then((state) => {
    console.log(state.enabled); // boolean
    console.log(state.headerValue); // string
  })
  .catch((e) =>
    console.error(`NavigationPreloadManager not supported: ${e.message}`),
  );

Spezifikationen

Specification
Service Workers
# dom-navigationpreloadmanager-getstate

Browser-Kompatibilität

BCD tables only load in the browser