重构了鉴权模式

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