Erstellen eines FastAPI-Endpunkts für den flexiblen Datenempfang
In FastAPI ist es möglich, einen Endpunkt zu erstellen, der sowohl Formular- als auch JSON-Anfragetexte verarbeiten kann.
Option 1: Inhaltstyp dynamisch bestimmen
- Erstellen Sie eine Abhängigkeitsfunktion, um den Inhaltstyp-Header zu überprüfen.
- Analysieren Sie den Anforderungstext mithilfe der Methoden von Starlette auf den Inhaltstyp.
- Verwenden Sie einen Try-Except-Block, um etwaige Parsing-Fehler abzufangen.
Option 2: Optionale Parameter verwenden
- Definieren Sie Ihren Endpunkt mit Datei- und Formularparametern, die als optional markiert sind.
- Überprüfen Sie, ob die Parameter Werte haben, um festzustellen, ob Formulardaten gesendet wurden.
- Andernfalls versuchen Sie, den Anforderungstext als zu analysieren JSON.
Option 3: Separate Endpunkte mit Middleware
- Erstellen Sie separate Endpunkte für JSON und Formulardatenanfragen.
- Verwenden eine Middleware, um den Inhaltstyp zu überprüfen und die Anfrage an den entsprechenden Endpunkt umzuleiten.
Option 4: Kombinierte Anfragen berücksichtigen
- Verwenden Sie model_validate_json von Pydantic ()-Methode zum Parsen von in Formularparametern übergebenen JSON-Körpern.
- Ermöglichen Sie die Übermittlung von JSON- und Formulardaten in einer einzigen Anfrage, indem Sie Endpunktparameter optional machen.
Das obige ist der detaillierte Inhalt vonWie kann ich einen FastAPI-Endpunkt erstellen, der sowohl Formular- als auch JSON-Daten akzeptiert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!