Гибридная стратегия CacheFirst + NetworkFirst
То, что нам нужно, похоже на обычную стратегию CacheFirst с параметром истечения срока действия maxAgeSeconds. Проблема в том, что по истечении времени истечения элемент удаляется из кеш-памяти, что плохо, если пользователь все еще находится в автономном режиме, то есть элемент не будет доступен (больше не доступен из кеш-памяти и недоступен). из сети тоже!).
Нам нужно, чтобы по истечении времени истечения:
- Ресурс НЕ удаляется из кеша.
- Стратегия CacheFirst переключается на NetworkStrategy, пока элемент не может быть извлечен из сети.
Таким образом, если пользователь все еще находится в автономном режиме, элемент все еще может быть найден в кэш-памяти...... и когда пользователь выходит в Интернет, из сети извлекается свежая новая версия элемента, и кэш обновляется вместе с новое время истечения на основе параметра maxAgeSeconds.
Можно ли добиться этого с помощью Workbox?