day03 DRF安装和使用
-
安装
pip install djangorestframework==3.12.4版本要求:djangorestframework==3.12.4 Python (3.5, 3.6, 3.7, 3.8, 3.9) Django (2.2, 3.0, 3.1) 版本要求:djangorestframework==3.11.2 Python (3.5, 3.6, 3.7, 3.8) Django (1.11, 2.0, 2.1, 2.2, 3.0) -
配置,在settings.py中添加配置
INSTALLED_APPS = [ ... # 注册rest_framework(drf) 'rest_framework', ] # drf相关配置以后编写在这里 REST_FRAMEWORK = { } -
URL和视图
# urls.py from django.urls import path from app01 import views urlpatterns = [ path('users/', views.UserView.as_view()), ]# views.py from rest_framework.views import APIView from rest_framework.response import Response class UserView(APIView): def get(self, request, *args, **kwargs): return Response({"code": 1000, "data": "xxx"}) def post(self, request, *args, **kwargs): return Response({"code": 1000, "data": "xxx"})
其实drf框架是在django基础进行的扩展,所以上述执行过得底层实现流程(同django的CBV):

drf中重写了 as_view 和dispatch方法,其实就是在原来django的功能基础上添加了一些功能,例如:
as_view,免除了csrf 验证,一般前后端分离不会使用csrf token认证(后期会使用jwt认证)。dispatch,内部添加了 版本处理、认证、权限、访问频率限制等诸多功能

浙公网安备 33010602011771号