Verwenden Sie das Django-Framework, um RESTful-APIs zu erstellen

PHPz
Freigeben: 2023-09-28 21:01:50
Original
1405 Leute haben es durchsucht

Verwenden Sie das Django-Framework, um RESTful-APIs zu erstellen

Erstellen Sie eine RESTful-API mit dem Django-Framework

Mit der kontinuierlichen Entwicklung von Webanwendungen ist die Erstellung skalierbarer und flexibler APIs zu einem wichtigen Bestandteil moderner Anwendungen geworden. Als beliebtes Entwicklungsframework bietet uns das Django-Framework eine schnelle und zuverlässige Möglichkeit, RESTful-APIs zu erstellen. In diesem Artikel wird erläutert, wie Sie mit dem Django-Framework eine RESTful-API erstellen und spezifische Codebeispiele bereitstellen.

  1. Erstellen von Django-Projekten und -Anwendungen
    Zuerst müssen wir ein Django-Projekt in unserer lokalen Umgebung erstellen. Verwenden Sie den folgenden Befehl, um ein Projekt mit dem Namen „myproject“ zu erstellen.
$ django-admin startproject myproject
Nach dem Login kopieren

Gehen Sie in das Projektverzeichnis und erstellen Sie eine Anwendung namens „api“.

$ cd myproject
$ python manage.py startapp api
Nach dem Login kopieren
  1. Projekte und Anwendungen konfigurieren
    In der Datei „settings.py“ des Projekts müssen wir die Anwendungen „rest_framework“ und „api“ zur Liste INSTALLED_APPS hinzufügen.
INSTALLED_APPS = [
    ...
    'rest_framework',
    'api',
]
Nach dem Login kopieren

Sie müssen außerdem die Datei urls.py des Projekts konfigurieren, um den Anforderungspfad an unsere API-Anwendung weiterzuleiten.

from django.urls import include, path

urlpatterns = [
    ...
    path('api/', include('api.urls')),
]
Nach dem Login kopieren
  1. Erstellen von Modellen und Serialisierern
    In unserer Anwendungs-API müssen wir zunächst die Modellklasse definieren, um die Ressourcen in unserer API darzustellen. Am Beispiel eines Artikels können wir in der Datei models.py ein Modell mit dem Namen „Article“ definieren.
from django.db import models

class Article(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True)
Nach dem Login kopieren

Als nächstes müssen wir eine Datei namens serializers.py im API-Verzeichnis erstellen und einen Serializer namens „ArticleSerializer“ definieren, um die Modellinstanz in JSON zu konvertieren.

from rest_framework import serializers
from api.models import Article

class ArticleSerializer(serializers.ModelSerializer):
    class Meta:
        model = Article
        fields = ['id', 'title', 'content', 'created_at']
Nach dem Login kopieren
  1. Ansichten erstellen
    Erstellen Sie eine Datei namens „views.py“ im API-Verzeichnis und fügen Sie eine Klassenansicht namens „ArticleList“ hinzu, um GET- und POST-Anfragen zu verarbeiten.
from rest_framework import generics
from api.models import Article
from api.serializers import ArticleSerializer

class ArticleList(generics.ListCreateAPIView):
    queryset = Article.objects.all()
    serializer_class = ArticleSerializer
Nach dem Login kopieren

Wir können auch eine Klassenansicht namens ArticleDetail erstellen, um GET-, PUT- und DELETE-Anfragen für einen einzelnen Artikel zu verarbeiten.

from rest_framework import generics
from api.models import Article
from api.serializers import ArticleSerializer

class ArticleDetail(generics.RetrieveUpdateDestroyAPIView):
    queryset = Article.objects.all()
    serializer_class = ArticleSerializer
Nach dem Login kopieren
  1. URLs konfigurieren
    Erstellen Sie eine Datei mit dem Namen urls.py im API-Verzeichnis und fügen Sie den folgenden Code hinzu, um den Pfad zu konfigurieren.
from django.urls import path
from api import views

urlpatterns = [
    path('articles/', views.ArticleList.as_view(), name='article-list'),
    path('articles/<int:pk>/', views.ArticleDetail.as_view(), name='article-detail'),
]
Nach dem Login kopieren
  1. Starten Sie den Dienst
    Jetzt können wir den Entwicklungsserver ausführen und unsere API testen.
$ python manage.py runserver
Nach dem Login kopieren
  1. API testen
    Mit Tools wie Postman oder Curl usw. können Sie HTTP-Anfragen senden, um die API zu testen. Hier sind einige gängige Beispiele für API-Anfragen.
  • Alle Artikel abrufen (GET-Anfrage):

    GET http://localhost:8000/api/articles/
    Nach dem Login kopieren
  • Einen einzelnen Artikel abrufen (GET-Anfrage):

    GET http://localhost:8000/api/articles/1/
    Nach dem Login kopieren
  • Neuen Artikel erstellen (POST-Anfrage):

    POST http://localhost:8000/api/articles/
    Content-Type: application/json
    
    {
      "title": "Hello",
      "content": "This is a test article."
    }
    Nach dem Login kopieren
  • Artikel aktualisieren (PUT-Anfrage ) :

    PUT http://localhost:8000/api/articles/1/
    Content-Type: application/json
    
    {
      "title": "Hello World",
      "content": "This is an updated test article."
    }
    Nach dem Login kopieren
  • Artikel löschen (DELETE-Anfrage) :

    DELETE http://localhost:8000/api/articles/1/
    Nach dem Login kopieren

    Zusammenfassung:
    In diesem Artikel haben wir vorgestellt, wie man das Django-Framework zum Erstellen einer RESTful-API verwendet. Durch die Erstellung von Modellen und Serialisierern sowie die Definition von Ansichten und URL-Konfigurationen können wir schnell eine voll funktionsfähige API erstellen und diese testen. Dies bietet uns eine gute Grundlage, um moderne Webanwendungen zu erstellen und skalierbare Dienste bereitzustellen. Mit dem Django-Framework können wir allgemeine API-Anforderungen wie das Abrufen, Erstellen, Aktualisieren und Löschen von Ressourcen problemlos bewältigen.

    (Wortzahl: 1063)

    Das obige ist der detaillierte Inhalt vonVerwenden Sie das Django-Framework, um RESTful-APIs zu erstellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!