mirror of
https://github.com/EstrellaXD/Auto_Bangumi.git
synced 2026-04-27 12:00:32 +08:00
change: api change.
This commit is contained in:
@@ -2,8 +2,10 @@ from datetime import timedelta
|
||||
|
||||
from fastapi import APIRouter, Depends, HTTPException, status
|
||||
from fastapi.security import OAuth2PasswordRequestForm
|
||||
from fastapi.responses import JSONResponse
|
||||
|
||||
from module.models.user import User, UserUpdate
|
||||
from module.models import APIResponse
|
||||
from module.security.api import (
|
||||
auth_user,
|
||||
get_current_user,
|
||||
@@ -22,7 +24,14 @@ async def login(form_data: OAuth2PasswordRequestForm = Depends()):
|
||||
data={"sub": user.username}, expires_delta=timedelta(days=1)
|
||||
)
|
||||
|
||||
return {"access_token": token, "token_type": "bearer", "expire": 86400}
|
||||
return JSONResponse(
|
||||
status_code=status.HTTP_200_OK,
|
||||
content={
|
||||
"access_token": token,
|
||||
"token_type": "bearer",
|
||||
"expire": 86400,
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/refresh_token", response_model=dict)
|
||||
@@ -32,16 +41,29 @@ async def refresh(current_user: User = Depends(get_current_user)):
|
||||
status_code=status.HTTP_401_UNAUTHORIZED, detail="invalid token"
|
||||
)
|
||||
token = create_access_token(data={"sub": current_user.username})
|
||||
return {"access_token": token, "token_type": "bearer", "expire": 86400}
|
||||
return JSONResponse(
|
||||
status_code=status.HTTP_200_OK,
|
||||
content={
|
||||
"access_token": token,
|
||||
"token_type": "bearer",
|
||||
"expire": 86400,
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/logout", response_model=dict)
|
||||
@router.get("/logout", response_model=APIResponse)
|
||||
async def logout(current_user: User = Depends(get_current_user)):
|
||||
if not current_user:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_401_UNAUTHORIZED, detail="invalid token"
|
||||
)
|
||||
return {"message": "logout success"}
|
||||
return JSONResponse(
|
||||
status_code=status.HTTP_200_OK,
|
||||
content={
|
||||
"msg_en": "Logout success",
|
||||
"msg_zh": "登出成功",
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.post("/update", response_model=dict)
|
||||
@@ -53,9 +75,12 @@ async def update_user(
|
||||
status_code=status.HTTP_401_UNAUTHORIZED, detail="invalid token"
|
||||
)
|
||||
if update_user_info(user_data, current_user):
|
||||
return {
|
||||
"message": "update success",
|
||||
"access_token": create_access_token({"sub": user_data.username}),
|
||||
"token_type": "bearer",
|
||||
"expire": 86400,
|
||||
}
|
||||
return JSONResponse(
|
||||
status_code=status.HTTP_200_OK,
|
||||
content={
|
||||
"message": "update success",
|
||||
"access_token": create_access_token({"sub": user_data.username}),
|
||||
"token_type": "bearer",
|
||||
"expire": 86400,
|
||||
},
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user