重构了鉴权模式

This commit is contained in:
carry 2025-01-21 23:11:28 +08:00
parent 1915bcfaa9
commit fc547eebe5

View File

@ -1,52 +1,22 @@
from pydantic import BaseModel
from datetime import datetime
class Token(BaseModel):
"""
表示一个JWT令牌的模型类
Attributes:
access_token (str): 访问令牌用于身份验证和授权
refresh_token (str): 刷新令牌用于获取新的访问令牌
token_type (str): 令牌类型通常是"Bearer"
expires_in (int): 访问令牌的有效期以秒为单位
"""
class TokenResponse(BaseModel):
access_token: str
refresh_token: str
token_type: str
expires_in: int
access_token_exp: datetime
refresh_token_exp: datetime
class TokenData(BaseModel):
"""
表示JWT令牌中存储的数据的模型类
Attributes:
id (int): 用户的唯一标识符
username (str): 用户的用户名
role (str): 用户的角色或权限
exp (datetime): 令牌的过期时间
"""
class TokenPayload(BaseModel):
id: int
username: str
role: str
exp: datetime
class LoginRequest(BaseModel):
"""
表示用户登录请求的模型类
Attributes:
username (str): 用户登录时输入的用户名
password (str): 用户登录时输入的密码
"""
username: str
password: str
class RefreshTokenRequest(BaseModel):
"""
表示刷新令牌请求的模型类
Attributes:
refresh_token (str): 用于刷新访问令牌的刷新令牌
"""
refresh_token: str
refresh_token: str