REST framework 简介

孟德曜
2023-12-01

作用

Django Rest Framework 是一个强大且灵活的工具包,用以构建Web API

Django REST Framework可以在Django的基础上迅速实现API,并且自身还带有WEB的测试页面,可以方便的测试自己的API

Web项目的两种模式

  • 前后端不分离

 在前后端不分离的引用模式中,前端页面看到的效果都是由后端控制的,由后端页面渲染或者重定向(每次返回时都是使用render 或者redirect来返回的,需要带上HTML页面和参数),也就是后端需要控制前端的展示,前端与后端的耦合度很高,这种模式比较适合纯网页应用,但是后端对接APP时,App可能并不需要后端返回一个HTML网页,二仅仅是数据本身,所以后端原本返回网页的接口不在适用前端APP应用,为了对接APP后端嗨需再开发一套接口。

  • 前后端分离

在前后端分离的应用模式中,后端仅返回前端所需要的数据,不再渲染HTML页面,不再控制前端的效果,只要前端用户看到什么效果,从后端请求的数据如何加载到前端中,都由前端自己决定,网页有网页自己的处理方式,APP有APP的处理方式,但无论哪种前端所需要的数据基本相同,后端仅需开发一套逻辑对外提供数据即可,在前后端分离的应用模式中,前端与后端的耦合度相对较低

在前后端分离的应用模式中,我们通常将后端开发的每一视图都成为一个接口,或者API,前端通过访问接口来对数据进行增删改查

若项目是前后端分离的就可以用到Django Rest Framework

使用

  • 安装
 pip3 install djangorestframework
  • 注册
在settings.py中注册
app:INSTALLED_APPS = [
    ...,
    'rest_framework'
] 


# 国际化配置
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False

框架风格

from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework.request import Request
from rest_framework.serializers import Serializer
from rest_framework.settings import APISettings
from rest_framework.filters import SearchFilter
from rest_framework.pagination import PageNumberPagination
from rest_framework.authentication import TokenAuthentication
from rest_framework.permissions import IsAuthenticated
from rest_framework.throttling import SimpleRateThrottle
​
class Test(APIView):
    def get(self, request, *args, **kwargs):
        return Response('drf get ok')

 

 类似资料: