在进行httpSession api获取session的时候报session为空错误,检查了几天一直没有线索,这个bug是我找得最痛苦的一个,猜猜怎么回事!!
由于进行了session跨服务器配置进行了springsession配置在配置共享域范围时
@Configuration
public class SessionConfig {
@Bean
public CookieSerializer cookieSerializer(){
DefaultCookieSerializer defaultCookieSerializer = new DefaultCookieSerializer();
// defaultCookieSerializer.setCookieMaxAge();//设置默认过期时间
defaultCookieSerializer.setDomainName(“shang4.com”);//todo 设置session作用域228集
defaultCookieSerializer.setCookieName(“session”);//使用springSession改造后的结果
return defaultCookieSerializer;
}
/**
*自定义序列化机制
* 这里的方法名必须是springSessionDefaultRedisSerializer
*/
@Bean
public RedisSerializer<Object> springSessionDefaultRedisSerializer(){
return new GenericJackson2JsonRedisSerializer();
}
}
它的共享与配置成了shang3,在进行跨域请求时使用的是shang4,导致redis可以存储有页面发来得数据但在shang4中无法获取redis中存储的数据
springsession存储的机制是现将session数据存储进redis
再进行返回,以至于第一次获取session数据为空
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。