DRF的解析器和渲染器

解析器

解析器的做用就是服务端接收客户端传过来的数据,把数据解析成本身想要的数据类型的过程。浏览器

本质就是对请求体中的数据进行解析。app

Django的解析器

咱们请求进来请求体中的数据在request.body中,那也就证实,解析器会把解析好的数据放入request.bodypost

咱们在视图中能够打印request的类型,可以知道request是WSGIRequest这个类。测试

咱们能够看下这个类的源码~~~咱们是怎么拿到request.POST数据的~~url

 

application/x-www-form-urlencoded不是不能上传文件,是只能上传文本格式的文件,3d

multipart/form-data是将文件以二进制的形式上传,这样能够实现多种类型的文件上传code

一个解析到request.POST,   request.FILES中。orm

也就是说咱们以前能在request中能到的各类数据是由于用了不一样格式的数据解析器~blog

那么咱们的DRF可以解析什么样的数据类型呢~~~ip

DRF的解析器

咱们想一个问题~何时咱们的解析器会被调用呢~~ 是否是在request.data拿数据的时候~

咱们说请求数据都在request.data中,那咱们看下这个Request类里的data~~

获得解析器后,调用解析器里的parse方法~~

 那说到这里~咱们看下DRF配置的默认的解析器的类都有哪些~~

也就是说咱们的DRF支持Json,Form表单的请求,包括多种文件类型的数据~~~~

能够在咱们的视图中配置视图级别的解析器~~~

这就是咱们DRF的解析器~~~

DRF的渲染器

渲染器就是友好的展现数据~~

DRF给咱们提供的渲染器有~~

咱们在浏览器中展现的DRF测试的那个页面~就是经过浏览器的渲染器来作到的~~

固然咱们能够展现Json数据类型~~~~渲染器比较简单~~~~ 

相关文章
相关标签/搜索