Как настроить контроль кэша для веб-файлов при весенней загрузке
Я видел пару существующих ответов, но когда я добавляю следующее, все webjars начинают возвращать 404. Как я могу настроить контроль кэша для всех моих веб-файлов?
@Configuration
public class HttpCacheControlConfig extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/webjars/**").setCachePeriod( 3600 * 24 );
}
}
1 ответ
Решение
Вы не настроили расположение ресурсов для обработчика. Вам нужно что-то вроде этого:
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/")
.setCachePeriod(3600 * 24);
В качестве альтернативы, если вы рады, что все ваши статические ресурсы имеют одинаковый период кэширования, вам не нужно WebMvcConfigurerAdapter
как вы можете просто настроить его с помощью свойства в application.properties
:
spring.resources.cache-period = 86400