| 123456789101112131415161718192021222324252627 |
- import traceback
- from http import HTTPStatus
- from kui.asgi import HTTPException, JSONResponse
- class ExceptionHandler:
- async def http_exception_handler(self, exc: HTTPException):
- return JSONResponse(
- dict(
- statusCode=exc.status_code,
- message=exc.content,
- error=HTTPStatus(exc.status_code).phrase,
- ),
- exc.status_code,
- exc.headers,
- )
- async def other_exception_handler(self, exc: Exception):
- traceback.print_exc()
- status = HTTPStatus.INTERNAL_SERVER_ERROR
- return JSONResponse(
- dict(statusCode=status, message=str(exc), error=status.phrase),
- status,
- )
|