Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gunakan rangka kerja Django untuk membina API RESTful

Gunakan rangka kerja Django untuk membina API RESTful

PHPz
PHPzasal
2023-09-28 21:01:501381semak imbas

Gunakan rangka kerja Django untuk membina API RESTful

Bina API RESTful menggunakan rangka kerja Django

Dengan pembangunan berterusan aplikasi web, membina API berskala dan fleksibel telah menjadi bahagian penting dalam aplikasi moden. Sebagai rangka kerja pembangunan yang popular, rangka kerja Django memberikan kami cara yang pantas dan boleh dipercayai untuk membina API RESTful. Artikel ini akan memperkenalkan cara menggunakan rangka kerja Django untuk membina API RESTful dan menyediakan contoh kod khusus.

  1. Mencipta Projek dan Aplikasi Django
    Pertama, kita perlu mencipta projek Django dalam persekitaran tempatan kita. Gunakan arahan berikut untuk mencipta projek bernama "myproject".
$ django-admin startproject myproject

Pergi ke dalam direktori projek dan buat aplikasi yang dipanggil "api".

$ cd myproject
$ python manage.py startapp api
  1. Mengkonfigurasi projek dan aplikasi
    Dalam fail settings.py projek, kita perlu menambah aplikasi "rest_framework" dan "api" pada senarai INSTALLED_APPS.
INSTALLED_APPS = [
    ...
    'rest_framework',
    'api',
]

Anda juga perlu mengkonfigurasi fail urls.py projek untuk memajukan laluan permintaan ke aplikasi API kami.

from django.urls import include, path

urlpatterns = [
    ...
    path('api/', include('api.urls')),
]
  1. Mencipta model dan penyeri bersiri
    Dalam api aplikasi kami, kami perlu mentakrifkan kelas model terlebih dahulu untuk mewakili sumber dalam API kami. Mengambil artikel sebagai contoh, kita boleh menentukan model bernama "Article" dalam fail models.py.
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)

Seterusnya, kita perlu mencipta fail yang dipanggil serializers.py dalam direktori api dan mentakrifkan serializer yang dipanggil "ArticleSerializer" untuk menukar contoh model kepada JSON.

from rest_framework import serializers
from api.models import Article

class ArticleSerializer(serializers.ModelSerializer):
    class Meta:
        model = Article
        fields = ['id', 'title', 'content', 'created_at']
  1. Buat paparan
    Buat fail yang dipanggil views.py dalam direktori api dan tambahkan paparan kelas yang dipanggil ArticleList untuk mengendalikan permintaan GET dan POST.
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

Kami juga boleh membuat paparan kelas yang dipanggil ArticleDetail untuk mengendalikan permintaan GET, PUT dan DELETE untuk satu artikel.

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
  1. Konfigurasikan URL
    Buat fail bernama urls.py dalam direktori api dan tambah kod berikut untuk mengkonfigurasi laluan.
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'),
]
  1. Mulakan perkhidmatan
    Kini kami boleh menjalankan pelayan pembangunan dan menguji API kami.
$ python manage.py runserver
  1. Menguji API
    Menggunakan alatan seperti Posmen atau curl, dsb., anda boleh menghantar permintaan HTTP untuk menguji API. Berikut ialah beberapa contoh permintaan API biasa.
  • Dapatkan semua artikel (PERMINTAAN GET):

    GET http://localhost:8000/api/articles/
  • Dapatkan satu artikel (permintaan GET):

    GET http://localhost:8000/api/articles/1/
  • Buat artikel baharu (permintaan POST):

    🜎rreee ) :
  • POST http://localhost:8000/api/articles/
    Content-Type: application/json
    
    {
      "title": "Hello",
      "content": "This is a test article."
    }
  • Padamkan artikel (DELETE request) :
  • PUT http://localhost:8000/api/articles/1/
    Content-Type: application/json
    
    {
      "title": "Hello World",
      "content": "This is an updated test article."
    }
  • Ringkasan:
  • Dalam artikel ini, kami memperkenalkan cara menggunakan rangka kerja Django untuk membina API RESTful. Dengan mencipta model dan penyeri bersiri, mentakrifkan paparan dan konfigurasi URL, kami boleh membina API berfungsi sepenuhnya dan mengujinya dengan cepat. Ini menyediakan asas yang baik untuk kami membina aplikasi web moden dan menyediakan perkhidmatan berskala. Menggunakan rangka kerja Django, kami boleh mengendalikan keperluan API biasa dengan mudah seperti mendapatkan, mencipta, mengemas kini dan memadamkan sumber.

(bilangan perkataan: 1063)

Atas ialah kandungan terperinci Gunakan rangka kerja Django untuk membina API RESTful. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn