• Django rest-framework框架十大功能分析


    rest-framework框架有哪些作用?

    一共有十点。

    路由 

    - 可以通过as_view传参数,根据请求方式不同执行相应的方法
    - 可以在url中设置一个结尾,类似于: .json

    视图

    - 帮助开发者提供了一些类,并在类中提供了多个方法以供我们使用。

    版本

    - 在url中设置version参数,用户请求时候传入参数。在request.version中获取版本,根据版本不同做不同处理

    认证

    - 写一个类并注册到认证类,在类的的authticate方法中编写认证逻辑。
    - 认证成功 返回一个元组(user,auth)
    - 认证失败 raise AuthticateFaild(....)
    - None 匿名

    权限

    - 写一个类并注册到权限类,在类的的has_permission方法中编写认证逻辑。
    - True 有权限
    - False 没有权限

    频率限制

    - 写一个类并注册到频率类,在类的的 allow_request/wait 方法中编写认证逻辑。
    allow_request
    - True
    - False 如果返回False,那么就要执行wait (等待)

    解析器

    - 根据ContentType请求头,选择不同解析器对 请求体中的数据进行解析。

    POST /index/ http1.1.
    host:11.11.11.11
    Content-Type:url-formendo.... 
    
    user=alex&age=123
    POST /index/ http1.1.
    host:11.11.11.11
    Content-Type:application/json
    
    {....} 

    分页

    - 对从数据库中获取到的数据进行分页处理: SQL -> limit offset

    - 根据页码:http://www.luffycity.com/api/v1/student/?page=1&size=10
    - 根据索引:http://www.luffycity.com/api/v1/student/?offset=60&limit=10
    - 根据加密:http://www.luffycity.com/api/v1/student/?page=erd8

    序列化

    - 对queryset序列化以及对请求数据格式校验。

     渲染器

    - 根据URL中传入的后缀,决定将数据如何渲染到页面上。

    根据Django请求声明周期,执行顺序:

    路由-->视图-->版本-->认证-->权限-->频率-->解析器-->序列化-->分页-->渲染

    出现这种问题:

    如何解决?

    setting.py

  • 相关阅读:
    1202实验三 进程调度实验
    1111实验二 作业调度模拟实验
    1009实验一 认识DOS
    一起了解操作系统发展史
    0909
    进程调度模拟程序
    试验三同学评论
    实验三 进程调度模拟程序
    作业调度模拟程序
    DOS命令解释程序的编写
  • 原文地址:https://www.cnblogs.com/gaoya666/p/9101068.html
Copyright © 2020-2023  润新知