Spaces:
Runtime error
Runtime error
| from fastapi import Request, status | |
| from fastapi.responses import JSONResponse | |
| from fastapi.exceptions import RequestValidationError | |
| from starlette.exceptions import HTTPException as StarletteHTTPException | |
| async def http_exception_handler(request: Request, exc: StarletteHTTPException): | |
| """Handle HTTP exceptions.""" | |
| return JSONResponse( | |
| status_code=exc.status_code, | |
| content={"detail": exc.detail} | |
| ) | |
| async def validation_exception_handler(request: Request, exc: RequestValidationError): | |
| """Handle validation exceptions.""" | |
| return JSONResponse( | |
| status_code=status.HTTP_422_UNPROCESSABLE_ENTITY, | |
| content={"detail": exc.errors(), "body": exc.body} | |
| ) | |
| async def general_exception_handler(request: Request, exc: Exception): | |
| """Handle general exceptions.""" | |
| print(f"Unhandled exception: {exc}") | |
| return JSONResponse( | |
| status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, | |
| content={"detail": "Internal server error"} | |
| ) | |