feat(auth): 实现用户退出登录功能

- 在网关过滤器中增加对未登录异常的处理
- 完善用户登出接口,调用 Sa-Token 的登出方法
- 新增 UserService 中的 logout 方法实现
- 优化获取用户 ID 的逻辑并增强异常处理
- 清理 Sa-Token 上下文避免内存泄漏
This commit is contained in:
Hanserwei
2025-10-02 22:05:32 +08:00
parent 4c6a08438a
commit 3cc615d38a
4 changed files with 27 additions and 9 deletions

View File

@@ -14,4 +14,10 @@ public interface UserService extends IService<UserDO> {
* @return 响应结果
*/
Response<String> loginAndRegister(UserLoginReqVO reqVO);
/**
* 退出登录
* @return 响应结果
*/
Response<?> logout(Long userId);
}

View File

@@ -142,4 +142,10 @@ public class UserServiceImpl extends ServiceImpl<UserDOMapper, UserDO> implement
}
});
}
@Override
public Response<?> logout(Long userId) {
StpUtil.logout(userId);
return Response.success();
}
}