Ein Artikel über nützliche Frameworks oder Bibliotheken, die zum Erstellen von REST-APIs in Python erforderlich sind. Dieser Artikel verwendet Django, das Python-Webframework. Ich denke, Flask wird separat veröffentlicht. Um jede Bibliothek und jedes Framework mit Django zu verwenden, müssen Sie settings.py installieren und bearbeiten.
Lass uns einen Blick darauf werfen! !!
Django Web-Framework. Es enthält alle Module, die Sie für Ihre Webanwendung benötigen. Zum Beispiel mühelos mit Verzeichnispfaden und Datenbanken umgehen. Ohne das geht es nicht.
terminal
$ pip install django
Django Rest framework Eine Sammlung von Modulen, die für die REST-API erforderlich sind. Eine Funktion zum Konvertieren von DB-Daten in das JSON-Format usw. Wenn Sie es erwähnen, wird es nicht funktionieren. Dies ist auch wichtig.
terminal
$ pip install djangorestframework
settings.py
settings.py
INSTALLED_APPS = [
'rest_framework',
]
Fügen Sie INSTALLED_APPS wie oben eine Zeile hinzu. INSTALLED_APPS Sie können Django darauf aufmerksam machen, indem Sie eine Anwendung definieren. Parameter, die beim Erstellen einer Migrationsdatei verwendet werden.
Die Erklärung von INSTALLED_APPS wird von nun an weggelassen.
SimpleJwt JWT (Json Web Token) kann Datenmanipulationen erkennen. Wird hauptsächlich für Authentifizierungstoken verwendet. Es ist eine Sicherheitskategorie, also bescheiden, aber ich denke, es ist besser, sie richtig im Portfolio zu verwenden.
$ pip install djangorestframework-simplejwt
settings.py
settings.py
from datetime import timedelta
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': [
'rest_framework.permissions.IsAuthenticated',
],
'DEFAULT_AUTHENTICATION_CLASSES':[
'rest_framework_simplejwt.authentication.JWTAuthentication',
],
}
SIMPLE_JWT = {
'AUTH_HEADER_TYPES':('JWT'),
'ACCESS_TOKEN_LIFETIME':timedelta(minutes=30),
}
REST_FRAMEWORK Machen Sie das djangorest-Framework erkennbar, indem Sie eine Bibliothek für die API definieren. DEFAULT_PERMISSION_CLASSES Geben Sie die Klasse an, die die Zugriffsberechtigung bestimmt. DEFAULT_AUTHENTICATION_CLASSES Geben Sie die für die Authentifizierung verwendete Klasse an. rest_framework.permissions.IsAuthenticated Anfrage für alle Anfragen erforderlich. rest_framework_simplejwt.authentication.JWTAuthentication Definieren Sie SIMPLE JWT. SIMPLE_JWT Sie können Einstellungen für SIMPLE JWT vornehmen. AUTH_HEADER_TYPES Sie können ein Token angeben. Geben Sie diesmal JWT an. ACCESS_TOKEN_LIFETIME Legen Sie die Dauer des Tokens fest. Das timedelta-Objekt addiert und subtrahiert Datum und Uhrzeit.
djoser Djangos Drittanbieter-Modul. Ein Modul, das die Authentifizierung wie Registrierung, Anmeldung, Abmeldung und Zurücksetzen des Kennworts unterstützt. Wie der Name schon sagt, ist es nur für Django, also funktioniert es nur mit der REST-API von Django.
$ pip install djoser
settings.py
settings.py
INSTALLED_APPS = [
'djoser',
]
pillow Bildverarbeitungsbibliothek. Wird beim Umgang mit Bildern verwendet. Einfache Verarbeitung wie Größenänderung und Drehung kann leicht durchgeführt werden. Bitte beachten Sie, dass eine erweiterte Verarbeitung wie Gesichtserkennung nicht möglich ist.
$ pip install pillow
CORS Eine Bibliothek, die den Zugriff von der Vorderseite aus steuert. Zum Beispiel die Funktion zum Begrenzen der Anforderungsquelle. Gemeinsame Nutzung von Ressourcen zwischen japanischen Ursprüngen.
$ pip install django-cors-headers
settings.py
settings.py
INSTALLED_APPS = [
'corsheaders',
]
MIDDLEWARE = [
#django.middleware.common.Schreiben Sie oben Common Middleware.
'corsheaders.middleware.CorsMiddleware',
]
CORS_ORIGIN_WHITELIST=[
#Herkunft zu erlauben
"http://localhost:3000"
]
MIDDLEWARE Durch das Definieren einer Liste von Middleware wird Django nach der HTTP-Verarbeitung nacheinander ausgeführt. Da es ** sequentiell ** ist, ist die Reihenfolge des Schreibens wichtig. CORS_ORIGIN_WHITELIST Durch Definieren des zulässigen Ursprungs werden andere Anforderungen abgespielt.
Wenn Sie diese verwenden, können Sie die REST-API für allgemeine Zwecke implementieren. Wenn Sie weitere notwendige oder nützliche Bibliotheken haben, teilen Sie uns dies bitte mit. Darüber hinaus setzt der Aufbau dieser Entwicklungsumgebungen eine virtuelle Umgebung voraus. Wenn Sie daran interessiert sind, eine virtuelle Umgebung zu erstellen, versuchen Sie bitte, sie anhand des folgenden Artikels schnell zu erstellen. Erstellen Sie mit Anaconda eine virtuelle Umgebung und arbeiten Sie mit PyCharm. Vielen Dank für das Lesen bis zum Ende.
Implementierte API-Authentifizierungsfunktion von JWT in Django Rest Framework
Recommended Posts