微服务多模块下解决session共享问题

发布时间:2022-06-20 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了微服务多模块下解决session共享问题脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

 

在微服务中拆分模块中,往往需要用到session,但是网关会把session过滤掉,此时我们就需要用到session共享机制了。

服务提供者中做以下配置

1、导入依赖

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

2、开启session共享(是通过redis来解决的)

spring:  session:    store-type: redis #开启session共享

3、配置redis

redis:    host: localhost    port: 6379    password: 123456

4、在启动类中开启session共享

@SpringBootApplication@EnableRedisHttpSession //开启session共享

 

 

网关中需要做同样的配置

1、导入依赖

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

2、开启session共享(是通过redis来解决的)

spring:  session:    store-type: redis #开启session共享

3、配置redis

redis:    host: localhost    port: 6379    password: 123456

4、配置网关

需要在网关中配置不过滤session

zuul:  routes:    user:      path: /user/**      serviceId: CLOUD-MALL-USER  sensitive-headers:  #把sensitive-headers设置为空,session不过滤

5、在启动类中开启session共享

@SpringBootApplication@EnableFeignClients@EnableZuulProxy@EnableRedisHttpSession //开启session共享

 

脚本宝典总结

以上是脚本宝典为你收集整理的微服务多模块下解决session共享问题全部内容,希望文章能够帮你解决微服务多模块下解决session共享问题所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: