• DRF解析器和渲染器


    解析器 :

    解析器的作用就是服务器端接收客户端穿过来的数据, 把数据解析成自己想要的数据类型的过程.

    本质就是对请求体重的数据进行解析.

    解析器原理 :

      1. 拿到前端传过来的Content-Type

      2. 获取后端自己的所有解析器

      3. 

    Django的解析器 :

      请求进来在请求体中的数据在request.body, 那也就证明, 解析器会把解析好的数据放入request.body中, 我们在视图中可以打印request的类型, 能够知道reqeust是WSGIRequest这个类.

      在源码中看下是怎么拿到request.POST数据的:

      application/x-www-form-urlencoded指的是只能上传文本格式的文件.

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

      一个解析到reqeust.POST, request.FILES中.

      也就是说我们之前能在request中得到的各种数据是因为用了不同格式的数据解析器.

    DRF的解析器 :

      那么我们的解析器什么时候会被调用呢? 

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

      在看下DRF配置的默认的解析器的类都有什么?

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

      可以在视图中配置视图级别的解析器

      这就是DRF的解析器


    DRF的渲染器 :

    渲染器就是有好的展示数据

    DRF给我们提供的渲染器有

      在浏览器中展示的DRF测试的那个页面就是通过浏览器的渲染器做到的

      当然也可以展示Json数据类型

  • 相关阅读:
    OVS local network 连通性分析
    再部署一个 instance 和 Local Network
    ARM Linux系统调用的原理
    Linux内存管理中的slab分配器
    浅析基于ARM的Linux下的系统调用的实现
    分享一个查看十六进制的位的小程序
    mokoid 源代码下载
    shell中eval的使用问题
    批量去掉文件中的^M
    基于TINY4412的Andorid开发-------简单的LED灯控制
  • 原文地址:https://www.cnblogs.com/dong-/p/9983572.html
Copyright © 2020-2023  润新知