Globalny handler wyjątków
Twoje API do aktualizacji stanów magazynowych zyskało ostatnio wielu użytkowników – część z nich zaczęła narzekać, że błędy walidacji zakodowane w formacie JSON są trudne do odczytania. Utwórzmy globalny handler błędów, który będzie zwracał błędy walidacji żądań jako zwykły tekst.
Wyjątek RequestValidationError został już załadowany.
To ćwiczenie jest częścią kursu
Wdrażanie AI na produkcję z FastAPI
Instrukcje do ćwiczenia
- Zaimportuj klasę do obsługi odpowiedzi w formacie zwykłego tekstu.
- Opatrz funkcję
validation_exception_handleradnotacją globalnego handlera wyjątków. - Zwróć odpowiedź w formacie zwykłego tekstu dla dowolnego wyjątku walidacji.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Import class for plain text response
from fastapi.responses import ____
app = FastAPI()
# Create global exception handler
@app.____(RequestValidationError)
async def validation_exception_handler(request, exc):
# Return plain text response
return ____(str(exc), status_code=400)