SpringBoot的Cookie sameSite之坑

https://blog.csdn.net/weixin_38296425/article/details/111941318

 

CSDN上很多文章给出了解决Cookie sameSite坑跨域之坑的解决办法,但是都忽略了一个问题,没有给出相关的依赖,我也是费了不少劲终于找到了解决办法,在这里记录下来。
例如下面的代码:

@Configuration
public class TomatConfig {
    @Bean
    public CookieSerializer httpSessionIdResolver() {
        DefaultCookieSerializer cookieSerializer = new DefaultCookieSerializer();
        cookieSerializer.setCookieName("token");
        cookieSerializer.setUseHttpOnlyCookie(false);
        cookieSerializer.setSameSite(null);
        return cookieSerializer;
    }
}

这样的设置没有错,但是当你用这样的代码时就会提示找不到cookieSerializer.setSameSite(null);这个方法,其实要使用这个方法是有条件的,需要引入下面的两组依赖才行
第1部分:

<dependency>
    <groupId>org.springframework.session</groupId>
    <artifactId>spring-session-data-redis</artifactId>
    <version>2.1.1.RELEASE</version>
</dependency>

第2部分:

<dependency>
    <groupId>org.springframework.session</groupId>
    <artifactId>spring-session-core</artifactId>
    <version>2.1.4.RELEASE</version>
</dependency>

如果缺少第1部分的依赖会提示找不到CookieSerializer这个类
如果缺少第2部分的依赖会提示找不到setSameSite()这个方法。

 

posted @ 2024-04-23 11:45  kelelipeng  阅读(221)  评论(0编辑  收藏  举报