python drf之viewset
What is Views drf提供了两个基类,五个视图扩展类,9个视图集 drf提供了一个Django中view的子类APIView ,主要变动大概为以下: 重新封装了Request 与 Response实例。 使用了独有的Request与Response对象,并且提供了专有的解析器 Parser 可以根据HTTP Content-Type 指明的请求数据进行解析。 增加了自有的鉴权/节流 在django中dispatch() 分发前,会对请求进行身份认证、权限检查、流量控制。 异常捕获 APIException。 APIView implement python 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 @classmethod def as_view(cls, **initkwargs): .... # 调用父类的方法,Python 3 可以使用直接使用 super().xxx 代替 super(Class, self).xxx view = super(APIView, cls).as_view(**initkwargs) view.cls = cls # 并且生成一个新的request view.initkwargs = initkwargs # Note: session based authentication is explicitly CSRF validated, # all other authentication is CSRF exempt....