Adds Exception Handlers

This commit is contained in:
2024-05-21 19:23:49 -03:00
parent 458d63a6c5
commit 0acf167d12
5 changed files with 48 additions and 2 deletions

View File

@@ -0,0 +1,2 @@
from .http_exception_handler import http_exception_handler
from .validation_exception_handler import validation_exception_handler

View File

@@ -0,0 +1,15 @@
from starlette.exceptions import HTTPException
from starlette.requests import Request
from starlette.responses import JSONResponse
async def http_exception_handler(request: Request, exc: HTTPException):
return JSONResponse(
status_code=exc.status_code,
content={
"error": {
"message": exc.detail,
"status_code": exc.status_code,
}
},
)

View File

@@ -0,0 +1,20 @@
from fastapi.exceptions import RequestValidationError
from starlette import status
from starlette.requests import Request
from starlette.responses import JSONResponse
async def validation_exception_handler(request: Request, exc: RequestValidationError):
status_code = status.HTTP_422_UNPROCESSABLE_ENTITY
return JSONResponse(
status_code=status_code,
content={
"error": {
"details": {
"body": exc.body,
"errors": exc.errors(),
},
"status_code": status_code,
}
},
)