При использовании Play в режиме производства он уже устанавливает заголовок ETag
, поэтому всякий раз, когда браузер запрашивает файл, соответствующий этому eTag, воспроизведение просто возвращает 304 Not Modified
. Это сохранит ваши данные (браузер не будет загружать файл снова, если он имеет правильную версию), но все еще требует запроса на сервер.
Если вы хотите указать дату истечения срока действия, вы можете использовать assets.defaultCache="max-age=3600"
для вашего application.conf
(приспособить значение для ваших нужд: 3600 - один час в секундах).
Я не могу проверить это прямо сейчас, но я думаю, что Play также устанавливает Cache-Control: max-age=3600
, поэтому, вероятно, предупреждение, которое вы получаете, связано с тем, что это значение слишком мало для инструмента, который вы используете для проверки кеширования.
Вы также можете установить время expiracy к отдельным активам (см https://www.playframework.com/documentation/2.5.x/AssetsOverview#Additional-Cache-Control-directive)
Обратите внимание, что вы должны только указать время высокого expiracy к активам, которые вы уверены, что не меняет много ...
Вы работаете в режиме воспроизведения? Если это так, браузер должен кэшировать активы уже ... – Salem
Да. Я запускаю его в режиме производства. По-прежнему понимание страницы Google говорит об этом. @Salem –