要在Spring Boot中將Cache-Control標頭添加到靜態資源中,可以使用WebMvcConfigurer接口的addResourceHandlers方法來配置靜態資源處理器。
首先,創建一個類實現WebMvcConfigurer接口,并重寫addResourceHandlers方法。在該方法中,使用addResourceHandler方法指定靜態資源的URL路徑,并使用addResourceLocations方法指定靜態資源的文件路徑。然后,使用setCacheControl方法為靜態資源添加Cache-Control標頭。
下面是一個示例代碼:
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**")
.addResourceLocations("classpath:/static/")
.setCacheControl(CacheControl.maxAge(365, TimeUnit.DAYS));
}
}
在上述示例中,靜態資源的URL路徑為"/static/**“,靜態資源的文件路徑為"classpath:/static/”。使用setCacheControl方法將Cache-Control標頭添加到靜態資源中,并設置緩存的最大期限為365天。
接下來,將該類注解為@Configuration,以便Spring Boot能夠自動識別并加載該配置。
這樣,當訪問靜態資源時,就會在響應頭中添加Cache-Control標頭。