Dengan pembangunan Internet, aplikasi Web dan API menjadi semakin biasa. Python ialah bahasa pengaturcaraan popular yang boleh digunakan untuk membina aplikasi web dan API. Dalam Python, Django ialah rangka kerja web berkuasa yang menyediakan banyak ciri berguna, termasuk model, paparan dan templat yang memudahkan pembangunan web. Sebaliknya, dokumentasi API ialah tugas penting yang membantu pembangun memahami fungsi dan penggunaan API. Dalam artikel ini, kami akan memperkenalkan cara menggunakan django-rest-swagger untuk mendokumentasikan API.
Mula-mula, anda perlu memasang django-rest-swagger. Anda boleh menggunakan pip untuk memasang:
pip install django-rest-swagger
Tambah kandungan berikut pada fail settings.py Django:
INSTALLED_APPS = [ # ... 'rest_framework', 'rest_framework_swagger', ] MIDDLEWARE = [ # ... 'corsheaders.middleware.CorsMiddleware', 'django.middleware.common.CommonMiddleware', ] SWAGGER_SETTINGS = { 'USE_SESSION_AUTH': False, #关闭session认证 'APIS_SORTER': 'alpha', 'JSON_EDITOR': True }
Kemudian, tambahkan kandungan berikut pada fail urls.py Django:
from rest_framework_swagger.views import get_swagger_view schema_view = get_swagger_view(title='API Document') urlpatterns = [ # ... url(r'^docs/', schema_view), ]
Selepas melengkapkan konfigurasi di atas, lawati http://localhost:8000/docs/ untuk melihat halaman dokumentasi API.
Ubah suai fail settings.py Django dan tambah kandungan berikut:
REST_FRAMEWORK = { 'DEFAULT_SCHEMA_CLASS': 'rest_framework.schemas.coreapi.AutoSchema', }
Ini akan menjadikan API mengembalikan data dokumen dalam format coreapi , Ini membolehkan pemaparan dalam UI Swagger.
Kini anda boleh mula menulis paparan API. Tambahkan beberapa metadata yang diperlukan pada paparan, yang akan digunakan untuk menjana dokumentasi API. Contohnya:
from rest_framework.views import APIView from rest_framework.response import Response from rest_framework import authentication, permissions class HelloWorld(APIView): """ 简要描述API的功能 """ authentication_classes = [authentication.TokenAuthentication] permission_classes = [permissions.IsAuthenticated] def get(self, request, format=None): """ 获取数据 所需参数: * param1 - 参数1说明 * param2 - 参数2说明 返回数据: * status - response的状态 """ content = {'message': 'Hello, World!'} return Response(content)
Dalam paparan ini, beberapa metadata ditambahkan, seperti perihalan ringkas, perihalan parameter dan perihalan pemulangan. Metadata ini akan digunakan oleh django-rest-swagger untuk menjana dokumentasi API.
Sekarang, anda boleh melawati http://localhost:8000/docs/ untuk melihat dokumentasi API. Dalam halaman dokumentasi, anda akan melihat senarai semua paparan API, masing-masing dengan kaedah, parameter dan arahan pemulangannya sendiri. Anda juga boleh menguji API pada halaman untuk menyemak sama ada ia berfungsi dengan betul.
Ringkasan
Menggunakan django-rest-swagger boleh mendokumenkan API dengan mudah supaya pembangun dapat memahami penggunaan dan fungsi API. Dalam artikel ini, kami memperkenalkan cara mengintegrasikan django-rest-swagger dalam Django dan menjana dokumentasi API. Saya harap artikel ini dapat membantu pembaca lebih memahami pengaturcaraan pelayan Python dan teknologi dokumentasi API.
Atas ialah kandungan terperinci Pengaturcaraan pelayan Python: dokumentasi API menggunakan django-rest-swagger. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!