Spec-Zone.ru › Web APIs

Запрос: свойство isHistoryNavigation

Примечание: Эта функция доступна в Веб-воркерах.

Свойство isHistoryNavigation только для чтения интерфейса Request — это булево значение, указывающее, является ли запрос навигацией по истории.

Навигация по истории — это навигация в истории браузера, выполненная с помощью вызова History.go(), History.back(), History.forward(), Navigation.traverseTo(), Navigation.back(), Navigation.forward() или непосредственно щелчком по кнопкам навигации назад или вперёд браузера.

Значение

Булево значение.

Примеры

В этом примере выполняется в службе рабочих потоков. Он слушает событие fetch. В обработчике событий служба рабочих потоков проверяет свойство isHistoryNavigation, чтобы узнать, произошёл ли запрос из-за навигации по истории. Если да, то служба рабочих потоков пытается ответить кэшированным ответом. Если в кэше нет ответа на этот запрос, служба рабочих потоков получает ответ из сети, кэширует его копию и отвечает ответом из сети.

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;
          });
        }
      }),
    );
  }

  // ...
});

Спецификации

Спецификация
Fetch
# ref-for-dom-request-ishistorynavigation①

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
isHistoryNavigation 69 79 Нет 56 Нет 69 Нет 48 Нет 10.0 69

См. также

  • API истории
  • API навигации
  • API службы рабочих потоков

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Request/isHistoryNavigation

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API