Entdecken Sie, wie Sie FastAPI zum Erstellen und Verarbeiten von POST-Anfragen verwenden. Dieser umfassende Leitfaden behandelt Einrichtung, Datenvalidierung, Datei-Uploads und mehr. Perfekt für Anfänger und erfahrene Entwickler. #FastAPI #API #apidog.com
Wenn Sie in die Welt der modernen Webentwicklung eintauchen, haben Sie wahrscheinlich schon von FastAPI gehört. Es ist eines der am schnellsten wachsenden Frameworks zum Erstellen von APIs in Python. In diesem Blogbeitrag werden wir untersuchen, wie Sie mit FastAPI POST-Anfragen erstellen und verarbeiten können. Egal, ob Sie ein erfahrener Entwickler sind oder gerade erst anfangen, dieser Leitfaden hilft Ihnen, die Grundlagen und mehr zu verstehen.
Was ist FastAPI?
FastAPI ist ein modernes, schnelles (leistungsstarkes) Webframework zum Erstellen von APIs mit Python 3.7+ basierend auf standardmäßigen Python-Typhinweisen. Es ist auf einfache Verwendung und hohe Leistung ausgelegt, die mit Node.js und Go vergleichbar ist. Das Framework ist außerdem sehr intuitiv und unkompliziert, was es zu einer ausgezeichneten Wahl für Anfänger und Experten gleichermaßen macht.
Warum FastAPI verwenden?
Es gibt mehrere Gründe, warum Entwickler FastAPI anderen Frameworks vorziehen:
- Geschwindigkeit: FastAPI ist schnell. Tatsächlich ist es eines der schnellsten derzeit verfügbaren Web-Frameworks.
- Benutzerfreundlichkeit: Dank automatischer interaktiver Dokumentation (dank Swagger UI und ReDoc) ist das Testen Ihrer APIs unglaublich einfach.
- Datenvalidierung: FastAPI nutzt Pydantic zur Datenvalidierung, wodurch sichergestellt wird, dass die von Ihrer API empfangenen Daten gültig sind.
- Async Ready: Es unterstützt sofort asynchrone Programmierung und ist daher für moderne, leistungsstarke Webanwendungen geeignet.
Einrichten von FastAPI
Bevor wir uns mit POST-Anfragen befassen, richten wir schnell FastAPI ein. Sie müssen Python auf Ihrem System installiert haben. Anschließend können Sie FastAPI und einen ASGI-Server wie Uvicorn mit pip installieren:
Sobald Sie FastAPI installiert haben, können Sie eine einfache FastAPI-Anwendung erstellen. Beginnen wir mit der Erstellung einer Datei mit dem Namen main.py:
Um die Anwendung auszuführen, verwenden Sie Uvicorn:
Öffnen Sie Ihren Browser und navigieren Sie zu http://127.0.0.1:8000. Sie sollten eine JSON-Antwort sehen: {„Hello“: „World“}.
Erstellen eines POST-Endpunkts
Nachdem wir nun eine einfache FastAPI’s-App ausgeführt haben, fügen wir einen POST-Endpunkt hinzu. POST-Anfragen werden verwendet, um zu verarbeitende Daten an eine angegebene Ressource zu senden. Um eine POST-Anfrage in FastAPI’s zu verarbeiten, verwenden Sie den @app.postDekorator.
Hier ist ein einfaches Beispiel für die Bearbeitung einer POST-Anfrage:
In diesem Beispiel:
- Wir definieren eine FastAPIInstanz.
- Wir erstellen ein Pydantic-Modell Item, das die Datenstruktur des Anforderungstexts beschreibt.
- Wir verwenden den @app.postDekorator, um einen POST-Endpunkt zu definieren /items/.
- Die create_itemFunktion nimmt ein ItemObjekt als Eingabe und gibt es zurück.
Um dies zu testen, können Sie einen API-Client wie Apidog verwenden oder einfach die interaktive Swagger-Benutzeroberfläche von FastAPI’s unter nutzen http://127.0.0.1:8000/docs.
Umgang mit Daten und Validierungen
FastAPI validiert die Anforderungsdaten automatisch anhand des Pydantic-Modells. Wenn die Daten nicht dem Modell entsprechen, gibt FastAPI’s einen 422-Statuscode mit Details zu den Validierungsfehlern zurück.
Wenn Sie beispielsweise eine POST-Anfrage /items/mit dem folgenden JSON-Text senden:
FastAPI akzeptiert diese Anfrage, da sie die Anforderungen des ItemModells erfüllt. Wenn Sie das Feld jedoch weglassen price, lehnt FastAPI’s die Anfrage ab und gibt einen Fehler zurück.
Verwenden von Apidog zum Testen Ihrer FastAPI POST-Anforderung
Apidog ist ein leistungsstarkes Tool zum Testen von APIs. Sie können damit API-Anfragen erstellen und speichern, sie in Sammlungen organisieren und mit Ihrem Team teilen.
So können Sie Apidog zum Testen Ihrer POST-Anfrage verwenden:
- Öffnen Sie Apidog und erstellen Sie eine neue Anfrage.
2. Stellen Sie die Anforderungsmethode auf POST ein.
3. Geben Sie die URL der Ressource ein, die Sie aktualisieren möchten. Fügen Sie alle zusätzlichen Header oder Parameter hinzu, die Sie einschließen möchten, und klicken Sie dann auf die Schaltfläche „Senden“, um die Anfrage zu senden.
4. Überprüfen Sie, ob die Antwort Ihren Erwartungen entspricht.
Erweiterte POST-Anfragen
Sehen wir uns nun einige fortgeschrittenere Szenarien an. Mit FastAPI’s können Sie mit POST-Anfragen noch viel mehr tun. Sie können beispielsweise:
- Datei-Uploads verarbeiten: Verwenden Sie Fileund UploadFilevon fastapi.
- Formulardaten verarbeiten: Verwendung Formvon fastapi.
- Pfadparameter verwenden: Mit POST-Anfragen kombinieren path parameters.
Umgang mit Datei-Uploads
Hier ist ein Beispiel für die Handhabung von Datei-Uploads mit FastAPI:
Dieser Endpunkt akzeptiert eine Datei und gibt den Dateinamen zurück. Sie können dies mit apidog oder Swagger UI testen.
Verarbeitung von Formulardaten
Um Formulardaten zu verarbeiten, verwenden Sie die FormKlasse von FastAPI:
Dieses Beispiel erstellt einen Anmeldeendpunkt, der Formulardaten akzeptiert. Sie können dies mithilfe einer Formularübermittlung in Ihrem Browser oder einem API-Testtool testen.
Verwenden von Pfadparametern
Sie können Pfadparameter auch mit POST-Anfragen kombinieren:
Dieser Endpunkt erstellt ein Element für einen bestimmten Benutzer, der durch den user_idPfadparameter identifiziert wird.
Mehr lesen: Was ist SoapUI
Fazit
FastAPI ist ein leistungsstarkes Framework, das die Erstellung robuster APIs mit Python vereinfacht. Seine Unterstützung für Datenvalidierung, interaktive Dokumentation und hohe Leistung machen es zu einer hervorragenden Wahl für die moderne Webentwicklung.
In diesem Blogbeitrag haben wir erläutert, wie Sie eine FastAPI-Anwendung einrichten und POST-Anfragen verarbeiten. Wir haben auch fortgeschrittenere Themen wie Datei-Uploads, Formulardatenverarbeitung und das Kombinieren von Pfadparametern mit POST-Anfragen behandelt. Inzwischen sollten Sie ein solides Verständnis davon haben, wie Sie FastAPI zum Erstellen und Verarbeiten von POST-Anfragen verwenden.
Denken Sie daran: Egal, ob Sie eine einfache API oder eine komplexe Anwendung erstellen, FastAPI verfügt über die Tools, die Sie zum Erfolg benötigen. Viel Spaß beim Programmieren!