更改spring-webflux应用程序中的samesite会话cookie属性



我正试图使用WebSessionIdResolver更改springboot应用程序的同一站点属性,如下所述:https://docs.spring.io/spring-session/docs/current/reference/html5/guides/boot-webflux-custom-cookie.html

@Configuration
public class CookieConfiguration {
@Bean
public WebSessionIdResolver webSessionIdResolver() {
CookieWebSessionIdResolver resolver = new CookieWebSessionIdResolver();
resolver.addCookieInitializer(builder -> builder.sameSite("None"));
return resolver;
}
}

我不明白发生了什么,当调试时,我可以看到bean正在初始化,但在每次http调用中,会话cookie都是用默认的sameSite属性"编写的;Lax";,并且默认CCD_ 2为空。

我能够解决这个添加"spring-session-core"依赖关系的问题,并使用以下配置:

@EnableSpringWebSession
@Configuration
public class CookieConfiguration {
@Bean
public WebSessionIdResolver webSessionIdResolver() {
CookieWebSessionIdResolver resolver = new CookieWebSessionIdResolver();
resolver.addCookieInitializer(builder -> builder.sameSite("None"));
return resolver;
}
@Bean
public ReactiveMapSessionRepository reactiveSessionRepository() {
return new ReactiveMapSessionRepository(new ConcurrentHashMap<>());
}
}

最新更新