11import json
22from fastapi import FastAPI , Request
3+ from fastapi .responses import JSONResponse
34from fastapi .exceptions import HTTPException
45from starlette .exceptions import HTTPException as StarletteHTTPException
56
67from http import HTTPStatus
78
89from config .setup_logs .logging import logger
9- from api_v1 import ValidationError
10+ from api_v1 . exeptions import ValidationError
1011
1112
1213def register_errors (app : FastAPI ) -> None :
@@ -24,8 +25,7 @@ async def validation_error_handler(
2425 error_code = 422 ,
2526 message = exc .detail ,
2627 )
27- json_response = json .dumps (response ).encode (encoding = 'utf-8' )
28- return json_response
28+ return JSONResponse (response )
2929
3030 @app .exception_handler (HTTPException )
3131 async def http_error_handler (
@@ -41,8 +41,7 @@ async def http_error_handler(
4141 error_code = exc .status_code ,
4242 message = exc .detail ,
4343 )
44- json_response = json .dumps (response ).encode (encoding = 'utf-8' )
45- return json_response
44+ return JSONResponse (response )
4645
4746 @app .exception_handler (Exception )
4847 async def error_handler (
@@ -58,8 +57,7 @@ async def error_handler(
5857 error_code = 500 ,
5958 message = HTTPStatus (500 ).phrase ,
6059 )
61- json_response = json .dumps (response ).encode (encoding = 'utf-8' )
62- return json_response
60+ return JSONResponse (response )
6361
6462 @app .exception_handler (StarletteHTTPException )
6563 async def validation_error_handler (
@@ -75,5 +73,4 @@ async def validation_error_handler(
7573 error_code = exc .status_code ,
7674 message = exc .detail ,
7775 )
78- json_response = json .dumps (response ).encode (encoding = 'utf-8' )
79- return json_response
76+ return JSONResponse (response )
0 commit comments