1、优化登陆缓存校验 2、修改前端移除存储中的token

This commit is contained in:
zhangtao
2024-12-17 11:19:41 +08:00
parent ef1b039b17
commit 53f1f2e6b3
4 changed files with 9 additions and 9 deletions
+6 -6
View File
@@ -57,14 +57,14 @@ async def get_current_user(
# 解析token
payload = decode_access_token(token)
if not payload or not hasattr(payload, 'is_refresh') or payload.is_refresh:
raise CustomException(msg="非法凭证")
raise CustomException(msg="非法凭证", status_code=401)
username = payload.sub
# 从Redis获取token并验证
redis_token = await Cache(request).get(f'{RedisInitKeyConfig.ACCESS_TOKEN.key}:{username}')
if not redis_token or redis_token != token:
raise CustomException(msg="用户未登录或登录已过期")
# redis_token = await Cache(request).get(f'{RedisInitKeyConfig.ACCESS_TOKEN.key}:{username}')
# if not redis_token or redis_token != token:
# raise CustomException(msg="用户未登录或登录已过期")
auth = AuthSchema(db=db)
@@ -147,11 +147,11 @@ class AuthPermission:
# 严格模式:要求所有权限都满足
if not all(perm in user_permissions for perm in self.permissions):
logger.error(f"用户 {auth.user.name} 缺少所需的权限: {self.permissions}")
raise CustomException(msg="无权限操作")
raise CustomException(msg="无权限操作", status_code=403)
else:
# 非严格模式:满足任一权限即可
if not any(perm in user_permissions for perm in self.permissions):
logger.error(f"用户 {auth.user.name} 缺少任何所需的权限: {self.permissions}")
raise CustomException(msg="无权限操作")
raise CustomException(msg="无权限操作", status_code=403)
return auth