token.py 633 B

1234567891011121314151617181920212223242526
  1. from typing import Optional
  2. from pydantic import BaseModel
  3. class Token(BaseModel):
  4. access_token: str
  5. token_type: str
  6. class TokenPayload(BaseModel):
  7. sub: Optional[str] = None
  8. class LoginRequest(BaseModel):
  9. mobile: str
  10. password: str
  11. app_id: Optional[str] = None # Optional for direct platform login
  12. remember_me: bool = False
  13. class AppLoginRequest(BaseModel):
  14. app_id: str
  15. app_secret: str
  16. class RejectRequest(BaseModel):
  17. """拒绝登录/同意请求的模型"""
  18. error: str = "access_denied" # OAuth2 标准错误码
  19. error_description: Optional[str] = None # 可选的错误描述