Fix image caching

This commit is contained in:
aditya.chandel
2025-10-23 00:41:45 -06:00
parent d7f8fc43a6
commit d94d69b90a
2 changed files with 8 additions and 4 deletions

View File

@@ -4,20 +4,21 @@ import com.adityachandel.booklore.config.security.filter.ImageCachingFilter;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.Ordered;
@Configuration
public class ImageCacheConfig {
@Bean
public FilterRegistrationBean<ImageCachingFilter> imageCachingFilterRegistration(ImageCachingFilter filter) {
public FilterRegistrationBean<ImageCachingFilter> imageCachingFilterRegistration() {
FilterRegistrationBean<ImageCachingFilter> registrationBean = new FilterRegistrationBean<>();
registrationBean.setFilter(filter);
registrationBean.setFilter(new ImageCachingFilter());
registrationBean.addUrlPatterns(
"/api/v1/media/book/*/cover",
"/api/v1/media/book/*/thumbnail",
"/api/v1/media/book/*/backup-cover"
);
registrationBean.setOrder(1);
registrationBean.setOrder(Ordered.LOWEST_PRECEDENCE);
return registrationBean;
}
}

View File

@@ -17,6 +17,7 @@ import org.springframework.security.config.annotation.authentication.builders.Au
import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer;
import org.springframework.security.config.annotation.web.configurers.HeadersConfigurer;
import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;
@@ -120,6 +121,9 @@ public class SecurityConfig {
.securityMatcher("/api/v1/media/**")
.csrf(AbstractHttpConfigurer::disable)
.sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
.headers(headers -> headers
.cacheControl(HeadersConfigurer.CacheControlConfig::disable)
)
.authorizeHttpRequests(auth -> auth
.anyRequest().permitAll()
)
@@ -148,7 +152,6 @@ public class SecurityConfig {
return http.build();
}
@Bean
public AuthenticationManager authenticationManager(HttpSecurity http) throws Exception {
return http.getSharedObject(AuthenticationManagerBuilder.class)