Anforderung: isHistoryNavigation-Eigenschaft
Hinweis: Dieses Feature ist verfügbar in Web Workers.
Die schreibgeschützte isHistoryNavigation
-Eigenschaft des Request
-Interfaces ist ein boolescher Wert, der angibt, ob die Anforderung eine Verlauf-Navigation ist.
Eine Verlauf-Navigation ist eine Navigation innerhalb des Browser-Verlaufs, die durch Aufrufen von History.go()
, History.back()
, History.forward()
, Navigation.traverseTo()
, Navigation.back()
, Navigation.forward()
oder direkt durch Klicken auf die Vorwärts- oder Rückwärts-Navigationstaste des Browsers erfolgt.
Wert
Ein boolescher Wert.
Beispiele
Dieses Beispiel wird in einem Service Worker ausgeführt. Es hört auf das fetch
-Ereignis. Im Ereignishandler überprüft der Service Worker die isHistoryNavigation
-Eigenschaft, um festzustellen, ob die Anforderung aufgrund einer Verlauf-Navigation erfolgt ist. Falls ja, versucht er mit einer zwischengespeicherten Antwort zu antworten. Falls der Cache keine Antwort für diese Anforderung enthält, holt der Service Worker eine Antwort aus dem Netzwerk, speichert eine Kopie davon im Cache und antwortet mit der Netzwerkantwort.
self.addEventListener("request", (event) => {
// ...
if (event.request.isHistoryNavigation) {
event.respondWith(
caches.match(event.request).then((response) => {
if (response !== undefined) {
return response;
} else {
return fetch(event.request).then((response) => {
let responseClone = response.clone();
caches.open("v1").then((cache) => {
cache.put(event.request, responseClone);
});
return response;
});
}
}),
);
}
// ...
});
Spezifikationen
Specification |
---|
Fetch Standard # ref-for-dom-request-ishistorynavigation① |
Browser-Kompatibilität
BCD tables only load in the browser