Request类源码分析

Posted wanlei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Request类源码分析相关的知识,希望对你有一定的参考价值。

通过APIView进入找到Request的源码

技术图片
技术图片

可以看见一堆属性和方法,其中request.data其实是一个方法,被包装成一个属性

技术图片
继续看__getattr__和query_params方法:
技术图片
技术图片

代码总结:

  • Request其实就是原生request对象被包装后的Request,即重写了__getattr__,return getattr(self._request, attr)
  • 比如:print(request.GET)就当于print(request.query_params)

以上是关于Request类源码分析的主要内容,如果未能解决你的问题,请参考以下文章

Django框架——CBV及源码分析

Flask上下文管理源码分析

umijs@use-request源码解读

Volley框架源码分析

DRF部分源码分析——APIView

Django(64)频率认证源码分析与自定义频率认证