Проблема
Несколько пользователей (только для мобильных устройств) имеют старые версии файлов JavaScript, хотя заголовок index.html
установлен на
cache-control: max-age=0, must-revalidate
и JavaScript имеет уникальный путь для каждого нового развертывания [randomString].app.js
, и я выпустил Cache Invalidation в AWS CloudFront, где размещаются статические файлы.
A Возможное подозрение
IПоверьте, это потому, что если мобильный браузер оставляет открытую вкладку (как это легко сделать с помощью сафари на мобильных устройствах, люди редко перезагружают или закрывают все свои вкладки), то клиент не будет запрашивать новый index.html и, следовательно, не получитновый JavaScript.
Вопрос
Есть ли способ гарантировать, что пользователи с долгоживущими вкладками (несколько недель) по-прежнему получают последний код? Или причина того, что у пользователей устаревший JavaScript, может быть чем-то другим?