Springboot使用Sa-Token集成Redis解决跨域问题

发布时间 2023-07-28 11:24:15作者: 西红柿里没有番茄

将会话数据存储在一些专业的缓存中间件上(比如 Redis), 做到重启数据不丢失,而且保证分布式环境下多节点的会话一致性

用Sa-Token集成Redis还是很方便的,只要添加个依赖就行,没有其他代码

Sa-Token 整合 Redis(使用 jackson 序列化方式)

<dependency>
    <groupId>cn.dev33</groupId>
    <artifactId>sa-token-redis-jackson</artifactId>
    <version>1.35.0.RC</version>
</dependency>

优点:Session 序列化后可读性强,可灵活手动修改,缺点:兼容性稍差

Sa-Token 整合 Redis (使用 jdk 默认序列化方式)

<dependency>
    <groupId>cn.dev33</groupId>
    <artifactId>sa-token-redis</artifactId>
    <version>1.35.0.RC</version>
</dependency>

优点:兼容性好,缺点:Session 序列化后基本不可读,对开发者来讲等同于乱码

上面依赖添加完之后就可以保证会话的一致性了,也可以解决跨域的问题

记得添加Redis相关的配置

Redis依赖

<!-- 提供Redis连接池 -->
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-pool2</artifactId>
</dependency>

Redis连接信息

spring:
  redis:
    database: 0
    host: 127.0.0.1
    port: 6379
    password: 1234