Workbox — Файлы, которые обслуживающий работник получает из кэша, даже если используется стратегия кэширования только по сети

#html #progressive-web-apps #service-worker #workbox

#HTML #progressive-веб-приложения #service-worker #workbox

Вопрос:

Я использую Workbox для PWA в своем проекте. В качестве стратегии кэширования я использую NetworkOnly из workbox.strategies.Класс NetworkOnly. Насколько я понимаю, Сеть означает только то, что ServiceWorker всегда будет запрашивать файлы с сервера, а не из кэша. Однако, когда я смотрю на вкладку сеть, файлы, похоже, обслуживаются ServiceWorker из кэша.

В моем понимании что-то не так?

Пожалуйста, обратитесь к скриншоту фрагментов кода ниже: введите описание изображения здесь

введите описание изображения здесь

Ответ №1:

На вкладке сеть будет отображаться «ServiceWorker» в качестве источника, независимо от того, использовал ли работник сервера кэш или сеть для извлечения ресурса.

Если вы хотите проверить, обслуживается ли ресурс только из сети, вы можете переключиться в автономный режим и посмотреть, не загружаются ли эти ресурсы. Кроме того, если service worker извлекает ресурс из сети, ресурс будет отображаться в списке сети дважды. Один раз между клиентом и service worker и один раз между service worker и сервером. Вы можете видеть, что bundle.min.js указано дважды, поэтому оно извлекается из сети.

Комментарии:

1. Большое спасибо Абрахаму за разъяснения. Просто для подтверждения: если используется ServiceWorker, то независимо от используемой стратегии кэширования источник / создатель будет отображаться как ServiceWorker? И да, из-за выбранного режима NetworkOnly в автономном режиме пакеты не загружались, что в значительной степени подтверждает стратегию! Кстати, я заметил, что многие ресурсы при загрузке на вкладке сеть отображаются дважды — один раз с кажущимся реальным запросом, в предварительном просмотре которого я вижу ответ, и один раз с маленькой точкой рядом с именем, в предварительном просмотре которого я вижу пустой ответ. Не могли бы вы объяснить, что это такое?