脚本宝典收集整理的这篇文章主要介绍了微服务多模块下解决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,请注明来意。