springcloud微服务中不同模块使用不同版本springboot导致session不一致的问题处理

session交由spring利用redis管理的。原因是参考下文:

原文地址:https://blog.csdn.net/qq_24484911/article/details/103478476

-------------------------------------------------

springboot不同版本项目中session共享存在问题


缘由:两个项目需要集成,并实现session共享,使用spring session实现,但一直不成功。

          原因是一个项目的springboot版本较高(2.1.3.RELEASE),会将session使用base64转码。

解决


在高版本项目中添加配置类禁止转码即可

@Configuration
public class RedisSessionConfig {
 
    /**
     * @Description 解决高版本的springboot会自动将session用base64转码。
     *                 导致与底版本springboot无法session共享。
     *                 此配置为禁止转码
     */
    @Bean
    public DefaultCookieSerializer getDefaultCookieSerializer(){
        DefaultCookieSerializer cookieSerializer = new DefaultCookieSerializer();
        cookieSerializer.setUseBase64Encoding(false);
        return cookieSerializer;
    }
}


————————————————
版权声明:本文为CSDN博主「SD_54」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_24484911/article/details/103478476

猜你喜欢

转载自blog.csdn.net/xiaoanzi123/article/details/106021395