1.7 KiB
1.7 KiB
Redis集成测试
这个文件包含了Redis集成的测试说明。
环境配置
- 复制环境配置文件:
cp .env.example .env
- 根据需要修改
.env文件中的Redis配置:
REDIS_URL=redis://:123456@127.0.0.1:6379/9
启动Redis服务
确保Redis服务器正在运行:
# 使用Docker运行Redis
docker run -d -p 6379:6379 --name redis-udmin redis:7-alpine --requirepass 123456
# 或者使用本地Redis服务
redis-server --requirepass 123456
测试Redis连接
启动服务器:
cargo run
查看日志中是否有Redis连接成功的信息:
[INFO] Connecting to Redis at: redis://:***@127.0.0.1:6379/9
[INFO] Redis connection established successfully
测试Token存储
- 登录获取token:
curl -X POST http://localhost:8080/api/auth/login \
-H "Content-Type: application/json" \
-d '{"username":"admin","password":"Admin@123"}'
- 检查Redis中的token:
# 连接到Redis CLI
redis-cli -a 123456 -n 9
# 查看所有token键
KEYS token:*
# 查看特定用户的token
GET token:access:user:1
GET token:refresh:user:1
功能验证
Redis集成后的新功能:
- Token存储:所有JWT token都存储在Redis中
- Token验证:每次API调用都会验证Redis中的token
- Token撤销:logout时会从Redis中删除token
- 性能提升:减少数据库查询,提升认证性能
- 单点登录:防止多重登录(可配置)
环境变量说明
REDIS_URL: Redis连接字符串REDIS_TOKEN_VALIDATION: 是否启用Redis token验证(默认true)JWT_ACCESS_EXP_SECS: 访问token过期时间(秒)JWT_REFRESH_EXP_SECS: 刷新token过期时间(秒)