ETag: ответ 304 работает только вместе с кешем
Клиент сохраняет тело успешного ответа и его ETag. При следующем запросе он может передать метку в If-None-Match.
• 304 — ресурс не изменился; используйте уже сохранённое тело. Нового тела в таком ответе нет.
• 200 — сохраните новое тело и новую метку. Если ETag отсутствует, старую метку нужно сбросить.
• Другие статусы обрабатываются отдельно; это не успешное обновление кеша.
Отправлять If-None-Match имеет смысл, когда есть и метка, и соответствующее тело. Храните их согласованно.
Для полноценного HTTP-кеша также важны Cache-Control, Vary и ключ кеша. Один ETag не реализует все правила кеширования.
#Java
Java Библиотека | Мы в Телеграм