Coverage for api/v1/endpoints/auth.py: 66.67%
18 statements
« prev ^ index » next coverage.py v7.10.7, created at 2025-10-13 18:58 +0000
« prev ^ index » next coverage.py v7.10.7, created at 2025-10-13 18:58 +0000
1"""
2认证API端点
3"""
5from fastapi import APIRouter, Depends, HTTPException, status
7from core.middleware.auth_middleware import get_current_user
8from core.models.user import LoginRequest, LoginResponse, User
9from core.services.auth_service import AuthService
11router = APIRouter()
12auth_service = AuthService()
15@router.post("/login", response_model=LoginResponse)
16async def login(login_data: LoginRequest):
17 """用户登录"""
18 result = auth_service.login(login_data)
19 if not result:
20 raise HTTPException(
21 status_code=status.HTTP_401_UNAUTHORIZED, detail="用户名或密码错误"
22 )
23 return result
26@router.get("/me")
27async def get_current_user_info(current_user: User = Depends(get_current_user)):
28 """获取当前用户信息"""
29 return current_user
32@router.post("/logout")
33async def logout():
34 """用户登出"""
35 return {"message": "登出成功"}