Я реализовал сервер REST с помощью Spring Boot 1.0.2. У меня возникли проблемы с предотвращением Spring настройки HTTP-заголовков, которые отключили кеширование HTTP.
Мой контроллер выглядит следующим образом:
@Controller
public class MyRestController {
@RequestMapping(value = "/someUrl", method = RequestMethod.GET)
public @ResponseBody ResponseEntity<String> myMethod(
HttpServletResponse httpResponse) throws SQLException {
return new ResponseEntity<String>("{}", HttpStatus.OK);
}
}
Все ответы HTTP содержат следующие заголовки:
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Expires: 0
Pragma: no-cache
Я попробовал следующее: удалить или изменить те заголовки:
- Вызовите
setCacheSeconds(-1)
в контроллере. - Вызовите
httpResponse.setHeader("Cache-Control", "max-age=123")
в контроллере. - Определите
@Bean
, который возвращаетWebContentInterceptor
, для которого я назвалsetCacheSeconds(-1)
. - Задайте свойство
spring.resources.cache-period
-1 или положительное значение вapplication.properties
.
Ничто из перечисленного не имеет никакого эффекта. Как отключить или изменить эти заголовки для всех или отдельных запросов в Spring Загрузка?