1111from backend .app .admin .schema .user import AuthLoginParam
1212from backend .app .admin .service .auth_service import auth_service
1313from backend .common .response .response_schema import ResponseModel , ResponseSchemaModel , response_base
14+ from backend .common .security .jwt import DependsJwtAuth
1415
1516router = APIRouter ()
1617
1718
1819@router .post ('/login/swagger' , summary = 'swagger 调试专用' , description = '用于快捷获取 token 进行 swagger 认证' )
19- async def swagger_login (obj : Annotated [HTTPBasicCredentials , Depends ()]) -> GetSwaggerToken :
20+ async def login_swagger (obj : Annotated [HTTPBasicCredentials , Depends ()]) -> GetSwaggerToken :
2021 token , user = await auth_service .swagger_login (obj = obj )
21- return GetSwaggerToken (access_token = token , user = user ) # type: ignore
22+ return GetSwaggerToken (access_token = token , user = user )
2223
2324
2425@router .post (
@@ -27,20 +28,26 @@ async def swagger_login(obj: Annotated[HTTPBasicCredentials, Depends()]) -> GetS
2728 description = 'json 格式登录, 仅支持在第三方api工具调试, 例如: postman' ,
2829 dependencies = [Depends (RateLimiter (times = 5 , minutes = 1 ))],
2930)
30- async def user_login (
31+ async def login (
3132 request : Request , response : Response , obj : AuthLoginParam , background_tasks : BackgroundTasks
3233) -> ResponseSchemaModel [GetLoginToken ]:
3334 data = await auth_service .login (request = request , response = response , obj = obj , background_tasks = background_tasks )
3435 return response_base .success (data = data )
3536
3637
37- @router .post ('/tokens/refresh' , summary = '刷新 token' )
38+ @router .get ('/codes' , summary = '获取所有授权码' , description = '适配 vben admin v5' , dependencies = [DependsJwtAuth ])
39+ async def get_codes (request : Request ) -> ResponseSchemaModel [list [str ]]:
40+ codes = await auth_service .get_codes (request = request )
41+ return response_base .success (data = codes )
42+
43+
44+ @router .post ('/tokens' , summary = '刷新 token' )
3845async def refresh_token (request : Request ) -> ResponseSchemaModel [GetNewToken ]:
39- data = await auth_service .new_token (request = request )
46+ data = await auth_service .refresh_token (request = request )
4047 return response_base .success (data = data )
4148
4249
4350@router .post ('/logout' , summary = '用户登出' )
44- async def user_logout (request : Request , response : Response ) -> ResponseModel :
51+ async def logout (request : Request , response : Response ) -> ResponseModel :
4552 await auth_service .logout (request = request , response = response )
4653 return response_base .success ()
0 commit comments