Код: Выделить всё
@app.exception_handler(RequestValidationError)
async def validation_exception_handler(request, exc):
response = prepare_response({}, g_ERROR__INCORRECT_PARAMS)
return JSONResponse(content=response)
< /code>
и функция промежуточного программного обеспечения, например: < /p>
@app.middleware("http")
async def response_middleware(request: Request, call_next):
try:
result = await call_next(request)
res_body = b''
async for chunk in result.body_iterator:
res_body += chunk
response = prepare_response(res_body.decode(), g_ERROR__ALL_OK)
except Exception as e:
response = prepare_response({}, g_ERROR__UNKNOWN_ERROR)
return JSONResponse(content=response)
Код: Выделить всё
@app.exception_handler(RequestValidationError)
async def validation_exception_handler(request, exc):
< /code>
В то время как, во всех других случаях, следует запустить следующую функцию: < /p>
@app.middleware("http")
async def response_middleware(request: Request, call_next):
Код: Выделить всё
try:
result = await call_next(request)
res_body = b''
async for chunk in result.body_iterator:
res_body += chunk
response = prepare_response(res_body.decode(), g_ERROR__ALL_OK)
except RequestValidationError as e:
response = prepare_response({}, g_ERROR__INCORRECT_PARAMS)
except Exception as e:
response = prepare_response({}, g_ERROR__UNKNOWN_ERROR)
< /code>
Кроме того, он вообще не работает после следующей строки кода: < /p>
result = await call_next(request)
Подробнее здесь: https://stackoverflow.com/questions/776 ... in-a-fasta