Dostęp do pamięci podręcznej z poziomu okna

Wszystkich czynności, które przeprowadziliśmy poza platformą window, można by pomyśleć, że Cache instancji jest dostępnych tylko w zakresie skryptu service worker. Faktem jest, że możesz uzyskiwać dostęp do Cacheinstancjizarównow zakresie skryptu service worker , jak w tradycyjnym kodzie Twojej aplikacji internetowej, uruchamianych w window. Ułatwia to użytkownikowi bezpośrednią interakcję z pamięcią podręczną skryptu service worker lub aktualizowanie interfejsu na podstawie stanu pamięci podręcznej.

Jednym z możliwych zastosowań jest oferowanie funkcji zapisywania w trybie offline w przypadku stron, które użytkownicy mogą chcieć przeczytać później, ale pamiętaj, że mogą być wtedy offline. Poniższy przykładowy fragment kodu Glitch pokazuje, jak to zrobić w Workbox.

W umieszczonej powyżej kodzie widać, że po kliknięciu przycisku „Zapisz w trybie offline” skrypt app.js zapisuje w pamięci podręcznej offline z kontekstu window. W skrypcie service worker zasoby statyczne strony są zapisywane w pamięci podręcznej, aby umożliwić dostęp offline. Strategia NetworkOnly jest używana ze specjalnym modułem obsługi, który zarządza dostępem offline do stron w pamięci podręcznej, i jest przekazywana do elementu NavigationRoute.

Aby przetestować działanie osadzonej strony typu Glitch, wykonaj te czynności:

  1. Otwórz nowe okno przeglądarki i wejdź na https://save-for-offline-test.glitch.me/
  2. Kliknij przycisk Dodaj do listy Do przeczytania.
  3. Otwórz narzędzia dla programistów w przeglądarce w Firefoksie lub Chrome. Jeśli używasz Chrome, otwórz panel aplikacji. W Firefoksie otwórz panel pamięci.
  4. W narzędziach dla programistów w każdej z tych przeglądarek w panelu po lewej stronie znajduje się pozycja Pamięć podręczna. Kliknij, aby ją rozwinąć. W sekcji pamięć podręczna offline powinien być widoczny adres URL strony dodanej przed chwilą w panelu po prawej stronie.
  5. Kliknij link do dowolnej innej strony u dołu strony.
  6. Przełączaj tryb offline w dowolnej z przeglądarek, aby symulować połączenie offline.
  7. Kliknij link do strony dodanej do pamięci podręcznej offline. Powinna się pojawić, nawet jeśli jesteś offline.
  8. Kliknij link do strony, która nie została dodana do pamięci podręcznej offline. Prośba zostanie odrzucona.

To nie jest jedyny przypadek użycia podczas pracy z instancjami Cache w interfejsie window. Możesz na przykład korzystać z prognozowanego pobierania z wyprzedzeniem i buforowania zasobów, których użytkownik będzie musiał wykonać określone działanie. Pozwoli to zmniejszyć lub uniknąć opóźnień przy pobieraniu takich zasobów na żądanie.

Istnieją inne potencjalnie przydatne przypadki użycia, a ponieważ gdy nie ma skryptu service worker, możesz wchodzić w interakcję z instancjami Cache, więc nie wszystkie z nich wymagają instalacji.