天天看点

DRF丶RESTfull介绍

它是基于Django的,帮助我们快速开发符合RESTful规范的接口框架。

DRF (Django REST Framework)

是一套基于Django开发的Django工具包,依赖python和Django,用于在Web后台构建Restful接口

  pip install djangorestframework

  在setting.py里配置

  创建一个serializer.py文件,导入包    from rest_framework.serializers import ModelSerializer

REST

什么是RESTFUL:

  REST与技术无关,代表的是一种软件架构风格

    REST从资源的角度审视审视整个网络,它将分布在网络中某个节点的资源通过URL进行标识

    所有的数据,无论是通过网络获取的还是操作(增删改查)的数据,都是资源。将一切数据视为资源是      REST区别于其他架构风格的最本质的属性。

    每一个URL代表一种资源

    客户端和服务器之间,传递这种资源的某种表现层;

    客户端通过HTTP动词对服务器端资源进行操作,实现“表现层状态转化”(GET,POST,PUT,DELETE)

REST指的是一组架构约束条件和原则。 满足这些约束条件和原则的应用程序或设计就是 RESTful

  1.使用https协议

  2.路径

    路径又称“终点”,表示API的具体网址,每个网址代表一种资源

    1) 资源作为网址,只能有名词,不能有动词,而且所用的名词往往与数据库的表名对应。

    2)API中的名词应该使用复数。无论子资源或者所有资源。

  3.将API版本号加到地址后边

  https://api.example.com/v1/

  

  4.方式

    GET      :从服务器取出资源(一项或多项)

    POST    :在服务器新建一个资源

    PUT      :在服务器更新资源(客户端提供改变的完整资源)

    PATCH  :在服务器更新资源(客户端提供改变的属性)

    DELETE :从服务器删除资源

  5.状态码跟http状态码一致

  6.过滤

    通过在url上传参的形式传递搜索条件

  7.状态码

    200 OK 请求已成功

    201 资源已创建

    301  永久重定向

    302  临时重定向

    400 语义有误,当前请求无法被服务器理解,请求参数错误

    405 请求方法不对

    404 URL地址不对

    500 服务端内部错误

  8.返回结果

     针对不同操作,服务器向用户返回的结果应该符合以下规范。

      GET /collection:返回资源对象的列表(数组)

      GET /collection/resource:返回单个资源对象

      POST /collection:返回新生成的资源对象

      PUT /collection/resource:返回完整的资源对象

      PATCH /collection/resource:返回完整的资源对象

      DELETE /collection/resource:返回一个空文档

  9.过滤

继续阅读