FastAPI-Installation und Umgebungseinrichtung
FastAPI erfordert Python 3.8 oder höher. Dieser Abschnitt behandelt, wie man FastAPI installiert und die Entwicklungsumgebung konfiguriert.
Python-Version prüfen
Bevor Sie FastAPI installieren, überprüfen Sie Ihre Python-Version:
$ python --version Python 3.11.0 # 或者 $ python3 --version Python 3.11.0
Wenn deine Python-Version niedriger als 3.8 ist, aktualisiere zuerst Python.
Virtuelle Umgebung erstellen
Es wird empfohlen, FastAPI in einer virtuellen Umgebung zu installieren, um Konflikte mit den Python-Paketen des Systems zu vermeiden:
# 创建虚拟环境 $ python -m venv venv # 激活虚拟环境(macOS/Linux) $ source venv/bin/activate # 激活虚拟环境(Windows) $ venv\Scripts\activate
Virtuelle Umgebungen sind eine bewährte Methode in der Python-Entwicklung. Die Verwendung einer separaten virtuellen Umgebung für jedes Projekt vermeidet Abhängigkeitskonflikte zwischen Projekten.
FastAPI installieren
Installiere FastAPI mit pip:
$ pip install fastapi
Dieser Befehl installiert nur das FastAPI-Kernpaket. Wenn du FastAPI und alle optionalen Abhängigkeiten auf einmal installieren möchtest, kannst du Folgendes verwenden:
$ pip install "fastapi[all]"
fastapi[all]Die folgenden Komponenten werden installiert:
| Paket | Zweck |
|---|---|
uvicorn[standard] | ASGI-Server, der zum Ausführen von FastAPI-Anwendungen dient |
python-multipart | Unterstützung für Formulardaten und Datei-Uploads |
jinja2 | HTML-Template-Engine |
python-jose[cryptography] | Unterstützung für JWT-Token |
passlib[bcrypt] | Passwort-Hashing und Verschlüsselung |
python-dotenv | Verwaltung von Umgebungsvariablen |
Uvicorn installieren
FastAPI ist ein ASGI-Framework, das einen ASGI-Server zum Ausführen benötigt. Der am häufigsten verwendete ist Uvicorn:
$ pip install "uvicorn[standard]"
[standard]Dies installiert uvloop (eine hochleistungsfähige Ereignisschleife) und httptools (einen hochleistungsfähigen HTTP-Parser), was die Leistung erheblich verbessert.
ASGI (Asynchronous Server Gateway Interface) ist die Standardschnittstelle zwischen asynchronen Python-Webservern und Anwendungen und die asynchrone Version von WSGI. Traditionelle Frameworks wie Flask verwenden WSGI (synchron), während FastAPI ASGI (asynchron) verwendet, was eine effizientere Verarbeitung gleichzeitiger Anfragen ermöglicht.
Starten Sie Ihre erste FastAPI-Anwendung
Nach der Installation erstellen Sie eine Datei namensmain.pyDatei:
Beispiel
# FastAPI-Anwendungsinstanz erstellen
app = FastAPI()
# GET-Route für den Root-Pfad definieren
@app.get("/")
async def root():
return {"message": "Hello World"}
Starten Sie die Anwendung in der Kommandozeile:
$ uvicorn main:app --reload
Parameter description:
| Parameter | Beschreibung |
|---|---|
main:app | mainBezieht sich auf den Dateinamen main.py,appBezieht sich auf den Namen der FastAPI-Instanzvariable, die in der Datei erstellt wurde |
--reload | Entwicklungsmodus: lädt den Server nach Codeänderungen automatisch neu (nur für die Entwicklungsumgebung) |
Nach erfolgreichem Start zeigt das Terminal Folgendes an:
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit) INFO: Started reloader process INFO: Started server process INFO: Waiting for application startup. INFO: Application startup complete.
Öffnen Sie den Browser und greifen Sie aufhttp://127.0.0.1:8000zu; Sie sehen dann die folgende JSON-Antwort:
{"message": "Hello World"}

Gleichzeitig generiert FastAPI automatisch eine interaktive API-Dokumentation:
| Adresse | Dokumenttyp | Beschreibung |
|---|---|---|
| http://127.0.0.1:8000/docs | Swagger UI | Eine Dokumentationsoberfläche zum interaktiven Testen der API |
| http://127.0.0.1:8000/redoc | ReDoc | Eine Dokumentationsoberfläche, die stärker auf das Leseerlebnis ausgerichtet ist |
FastAPI CLI verwenden
Die neue Version von FastAPI bietetfastapiein Kommandozeilenwerkzeug, mit dem sich Anwendungen bequemer ausführen lassen:
# 开发模式(自动重载) $ fastapi dev # 生产模式 $ fastapi run
fastapi devEs findet automatisch FastAPI-Anwendungen im Projekt und startet den Entwicklungsserver, äquivalent zuuvicorn main:app --reload。
Empfohlene Entwicklungswerkzeuge
| Werkzeuge | Beschreibung |
|---|---|
| VS Code | Kostenlos und leichtgewichtig, bietet eine hervorragende FastAPI-Entwicklungserfahrung mit den Erweiterungen Python und Pylance |
| PyCharm | Eine professionelle Python-IDE mit integrierten FastAPI-Projektvorlagen und leistungsstarken Debugging-Funktionen |
| Alibaba Qoder | Eine von Alibaba eingeführte KI-Programmier-IDE, die tiefgehend auf Basis von VS Code angepasst wurde |
| ByteDance Trae | Ein von ByteDance eingeführtes KI-gesteuertes Entwicklungstool mit integrierter Python-Unterstützung |
Es wird empfohlen, VS Code + Python-Erweiterung zu verwenden; diese bietet die beste Unterstützung für FastAPI-Typannotationen und Autovervollständigung und ist völlig kostenlos.Weitere Erweiterungen