diff --git a/pom.xml b/pom.xml index 4bcac48..56cf07c 100644 --- a/pom.xml +++ b/pom.xml @@ -209,6 +209,15 @@ 3.5.11 + + org.springframework.session + spring-session-core + 3.4.2 + + + + + diff --git a/src/main/java/com/cultural/heritage/config/SessionConfig.java b/src/main/java/com/cultural/heritage/config/SessionConfig.java new file mode 100644 index 0000000..f8ea69f --- /dev/null +++ b/src/main/java/com/cultural/heritage/config/SessionConfig.java @@ -0,0 +1,29 @@ +package com.cultural.heritage.config; + +import org.springframework.boot.autoconfigure.session.DefaultCookieSerializerCustomizer; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.session.MapSessionRepository; +import org.springframework.session.SessionRepository; +import org.springframework.session.config.annotation.web.http.EnableSpringHttpSession; + +import java.util.concurrent.ConcurrentHashMap; + +@Configuration +@EnableSpringHttpSession +public class SessionConfig { + + @Bean + public SessionRepository sessionRepository() { + return new MapSessionRepository(new ConcurrentHashMap<>()); + } + + + @Bean + DefaultCookieSerializerCustomizer cookieSerializerCustomizer() { + return cookieSerializer -> { + cookieSerializer.setSameSite("None"); // 设置cookie的SameSite属性为None,否则跨域set-cookie会被chrome浏览器阻拦 + cookieSerializer.setUseSecureCookie(true); // sameSite为None时,useSecureCookie必须为true + }; + } +} \ No newline at end of file