ReactJS + Express Cache Busting проблема

Я пытаюсь избежать перебора кеша, задав номера версий в имени файла index.html (index.hash.html), созданном с помощью html-webpack-plugin. Однако я не могу заставить браузер захватить новый файл с сервера, потому что старый файл index.html все еще кэшируется в течение X времени.

Я мог бы очистить кеш, чтобы снова попасть на сервер, или изменить заголовок управления кешем, но это не очень хорошо работает для пользователей, у которых уже есть кешированный файл, поскольку кажется, что они все равно не увидят изменений в управлении кешем. Я ищу правильное решение и не могу найти его для этой проблемы.

Какие-либо предложения?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
0
86
1

Ответы 1

Я не эксперт в этом, но мы не используем хеширование для index.html. Это означает, что TTL для него равен нулю.

С другой стороны, для всех других ресурсов (js, css, svg ...) определены хеши и они кэшируются. Наш сервисный работник на клиенте проверяет наличие новых версий и обслуживает их соответствующим образом.

Надеюсь это поможет!

Хм, поэтому я снова удалил хеширование и заметил, что max-age установлен на ноль, что должно проверять наличие новой версии, которую я предполагаю (но это не так). Однако я использую сервис-воркера, которого я должен был исследовать больше, должно быть, это то, что мешает обновлению страниц ...

Greg Miller 05.04.2018 22:06

Другие вопросы по теме