Я столкнулся с следующей проблемой с шаблоном Post/Redirect/Get.
При выполнении GET
после перенаправления Chrome берет страницу из кеша.
Таким образом, пользователь видит устаревшие данные.
Я пробовал следовать для подтверждения/поддержки повторной аттестации
if (request.checkNotModified(sinceLastTweet)) return null;
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Last-Modified", String.valueOf(sinceLastTweet));
Но только no-store
вызывает запрос сервера.
Почему Chrome берет страницу из кеша при выполнении перенаправления?
@RequestMapping(method = GET)
public String home(ModelMap model, @PathVariable String username, HttpServletResponse response, WebRequest request) {
// response.setHeader("Cache-Control", "no-store");
List<Tweet> tweets = tweetRepository.findAll();
// long sinceLastTweet = tweets.get(0).getTimestamp().toEpochMilli();
// if (request.checkNotModified(sinceLastTweet)) return null;
// response.setHeader("Cache-Control", "no-cache");
// response.setHeader("Last-Modified", String.valueOf(sinceLastTweet));
model.addAttribute("tweets", tweets);
model.addAttribute("tweet", new Tweet());
model.addAttribute("username", username);
return "home";
}