測開大佬告訴你:如何5分鐘快速建立restful風格的API接口-使用django restframework框架

1、思考❓❔

1.建立API接口難嗎?

軟件測試工程師:python

  • 只測過API接口, 從沒建立過
  • 應該須要掌握一門後端開發語言和後端開發框架吧!?
  • 腦容量有限,想一想就可怕


2.如何建立API接口呢?

  • 使用Django restframework能快速建立符合restful風格的API接口
  • 經過Django restframework框架提供的序列化器、視圖集可輕輕鬆鬆實現
  • 簡單高效,學習成本低



2、搭建項目工程🔨🔨

1.建立項目

  • 打開pycharm數據庫

  • 建立項目django

    • 使用豆瓣源安裝Django Django restframework markdown

    • 建立Django項目工程

    在Terminal中運行python manage.py runserver , 在瀏覽器中訪問, 若是出現以下頁面表明成功後端



3、建立API接口💪🏽💪🏽

1.建立子應用並遷移

# 在Terminal中建立子應用
python manage.py startapp users

# 進行數據庫遷移
python manage.py makemigrations
python manage.py migrate


2.添加配置

在CreateRestfulAPI/settings.py中添加以下配置:api

# 將'rest_framework'和'users.apps.UsersConfig'加入到INSTALLED_APPS列表中
INSTALLED_APPS = [

    # restframework子應用
    'rest_framework',
    # users子應用
    'users.apps.UsersConfig',
]

# restframework的全局配置放在REST_FRAMEWORK字典中
REST_FRAMEWORK = {
    # 使用Django自帶permission_class來進行認證
    # 爲認證的用戶只有讀的權限
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
    ]
}


3.編寫代碼

  • 建立users/serializers.py文件
from django.contrib.auth.models import User
from rest_framework.serializers import HyperlinkedModelSerializer


# 建立序列化器
class UsersModelSerializer(HyperlinkedModelSerializer):
    class Meta:
        model = User
        fields = ('url', 'username', 'email', 'is_staff', 'is_active', 'last_login')
  • users/views.py中添加以下代碼
from rest_framework import viewsets
from django.contrib.auth.models import User

from users.serializers import UsersModelSerializer


# 定義視圖集
class UsersViewSet(viewsets.ModelViewSet):
    queryset = User.objects.all()
    serializer_class = UsersModelSerializer
  • 建立子路由users/urls.py文件
from rest_framework.routers import DefaultRouter

from .views import UsersViewSet

# 建立DefaultRouter對象
router = DefaultRouter()
# 批量添加路由
router.register(r'users', UsersViewSet)

urlpatterns = [

]

urlpatterns += router.urls
  • 在全局路由文件CreateRestfulAPI/urls.py中添加以下代碼
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    # 添加restframework自帶的登陸接口路由
    path('', include('rest_framework.urls', namespace='rest_framework')),
    # 添加子路由
    path('', include('users.urls')),
]
  • 建立超級管理員用戶

  • 運行項目
    • 在命令行輸入: python manage.py runserver


4.效果展現

  • 訪問主頁

  • 使用超級管理員用戶登陸

  • 對用戶進行管理(POST、GET)

  • 對用戶進行管理(GET、PUT、DELETE)



6、總結💡💡

  • 本文介紹了一種建立符合Restful風格的API接口的方法
  • 包含Django項目環境的搭建
  • 實現了GET、POST、PUT、DELETE接口的建立方式, 簡單高效
  • 本文爲可優原創,有不足之處,請多指教!

相關文章
相關標籤/搜索