From fd98739d6f315537f7904738a28dc8db5e9062b3 Mon Sep 17 00:00:00 2001 From: Backend IM Bot Date: Wed, 26 Mar 2025 17:06:40 +0000 Subject: [PATCH] Add post endpoint for logouts --- endpoints/logouts.post.py | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/endpoints/logouts.post.py b/endpoints/logouts.post.py index 5288e84..89727fd 100644 --- a/endpoints/logouts.post.py +++ b/endpoints/logouts.post.py @@ -2,20 +2,29 @@ ```python from fastapi import APIRouter, Depends, HTTPException, status -from sqlalchemy.orm import Session +from fastapi.security import OAuth2PasswordBearer from core.database import get_db -from core.models.user import User -from core.schemas.user import UserSchema +from sqlalchemy.orm import Session +from models.user import User +from schemas.user import UserSchema from core.security import get_current_user router = APIRouter() +oauth2_scheme = OAuth2PasswordBearer(tokenUrl="login") @router.post("/logouts", status_code=200) async def logout( current_user: User = Depends(get_current_user), db: Session = Depends(get_db) ): - current_user.is_active = False - db.commit() - return {"message": "Successfully logged out"} + try: + # Clear any active sessions or tokens for the user + current_user.is_active = False + db.commit() + return {"message": "Successfully logged out"} + except Exception as e: + raise HTTPException( + status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, + detail="Error during logout process" + ) ``` \ No newline at end of file