Heim  >  Artikel  >  Backend-Entwicklung  >  So passen Sie Fehlerantworten für FastAPI an

So passen Sie Fehlerantworten für FastAPI an

Susan Sarandon
Susan SarandonOriginal
2024-10-21 06:25:30627Durchsuche

How to Customize Error Responses for FastAPI

Anpassung von Fehlerantworten in FastAPI

Wenn in FastAPI ungültige Anforderungen auftreten, antwortet es normalerweise mit einem 422 Unprocessable Entity-Fehler. Diese Reaktion stimmt möglicherweise nicht immer mit der gewünschten Benutzererfahrung überein. So passen Sie die Fehlerreaktion an die spezifischen Anforderungen Ihrer Anwendung an.

Die Standardfehlerreaktion umfasst Details wie „Zusätzliche Daten“ und „Tatsächliche“ Daten. Um diese Antwort anzupassen, bietet FastAPI die Möglichkeit, den Ausnahmehandler für die Anforderungsvalidierung zu überschreiben. Wie im folgenden Codebeispiel gezeigt, können Sie einen benutzerdefinierten Handler definieren:

<code class="python">from fastapi import FastAPI, Body, Request, status
from fastapi.encoders import jsonable_encoder
from fastapi.exceptions import RequestValidationError
from fastapi.responses import JSONResponse
from pydantic import BaseModel

app = FastAPI()

@app.exception_handler(RequestValidationError)
async def validation_exception_handler(request: Request, exc: RequestValidationError):
    return JSONResponse(
        status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
        content=jsonable_encoder({
            "detail": exc.errors(),  # optionally include the errors
            "body": exc.body,
            "custom msg": "Your error message"
        }),
    )</code>

Alternativ können Sie eine PlainTextResponse mit einer benutzerdefinierten Fehlermeldung zurückgeben:

<code class="python">from fastapi.responses import PlainTextResponse

@app.exception_handler(RequestValidationError)
async def validation_exception_handler(request, exc):
    return PlainTextResponse(str(exc), status_code=422) </code>

Diese Anpassungsoptionen ermöglichen Sie können Fehlerantworten ordnungsgemäß behandeln und ein benutzerfreundliches Erlebnis bieten, selbst wenn ungültige Anfragen auftreten.

Das obige ist der detaillierte Inhalt vonSo passen Sie Fehlerantworten für FastAPI an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn