zoukankan      html  css  js  c++  java
  • rest framework-restful介绍-长期维护

    ###############   django框架-rest framework    ###############

    # django rest framework 框架
    # 为什么学习这个rest framework?
    # 1,写代码的时候会用到,前后端分离的项目,可以帮助我们快速的写api,
    # 2,面试的时候会问到,
    
    # 这个框架提供了一些什么功能?
    # 1,权限组件,
    # 2,认证组件
    # 3,访问频率限制组件,
    # 4,序列化,这个序列化是干什么的?把字符串序列化为json返回,
    # 5,路由
    # 6,视图,你写的rest framework继承过哪些类?这个学过了就知道了
    # 7,分页
    # 8,解析器,解析器干什么的?parse,vue发过来的请求,我要解析,根据头不同解析成不同的结果,
    # 9,渲染器,渲染页面的,
    # 10,版本,
    # 这些就是序列化是用的最多的,分页也用的多,其他的比如权限这样的写一次就很少改动了,
    
    # django rest framework安装:
    # 在pycharm中的terminal中执行命令:
    # pip install djangorestframework

    # 这是一个app,注意app的注册在settings.py中

    ###############   restful协议    ###############

    # restful协议
    # REST与技术无关,代表的是一种软件架构风格
    # 所有的数据,不管是通过网络获取的还是操作(增删改查)的数据,都是资源,将一切数据视为资源是REST区别与其他架构风格的最本质属性
    
    # 1,HTTPs协议:
    #     API与用户的通信协议,总是使用HTTPs协议。https收费,但是更加的安全
    # 2,域名:唯一的目的就是为了能一眼看到就是接口,可以不加,但是这是规范,
    #     第一种:子域名方式
    #     https://api.example.com,这一种会存在跨域,浏览器有同源策略,
    #     第二种:url方式,
    #     https://example.org/api/,这种便宜,
    # 3,版本:
    #     URL,如:https://api.example.com/v1/
    #     https://example.org/api/v1/
    # 4,路径:面向资源编程,写url的时候推荐使用名词,
    #     https://example.org/api/v1/名词/
    #     https://example.org/api/v1/order/
    # 5,method,
    #     GET:获取资源(一项或多项)
    #     POST:新建一个资源
    #     PUT:更新资源(全部更新)
    #     PATCH:更新资源(局部更新)
    #     DELETE:删除资源
    # 6,过滤,在url加条件,通过?号
    #     https://api.example.com/v1/zoos?page=2&per_page=100:指定第几页,以及每页的记录数
    # 7,状态码+code:常用的状态码
    #     200 OK - [GET]:服务器成功返回用户请求的数据
    #     200系列表示成功
    #     300系列表示重定向
    #     404 NOT FOUND - [*]:用户发出的请求针对的是不存在的记录,服务器没有进行操作
    #     400系列是客户端错误
    #     500 INTERNAL SERVER ERROR - [*]:服务器发生错误,用户将无法判断发出的请求是否成功。
    #     500系列是服务端错误,
    #     api需要返回状态码,但是我们通常使用code来做,因为只有状态码是不够用的,比如支付宝的状态码,可以参考看看,
    #     所以需要状态码和code结合,
    # 8,错误信息:
    #     api一定要返回错误信息,
    # 9,返回请求的结果,
    #     针对不同的操作,返回不同的结果,
    #     GET /order/ 返回所有的订单
    #     GET /order/1/  返回单个订单
    #     POST /order/  创建订单,如果前端需要,就返回创建的订单信息,不需要就不返回
    #     PUT /order/1/  修改订单,全部
    #     PATCH /order/1/  修改订单,局部
    #     DELETE /order/1/ 删除订单
    # 10,Hypermedia API,RESTful API最好做到Hypermedia,即返回结果中提供链接,连向其他API方法,使得用户不查文档,也知道下一步应该做什么
    
    # 上面就是所有的规范,但是我们可以不遵循,需要根据业务情况来选择是否遵循,

    ###############  结束线   ###############

  • 相关阅读:
    Photoshop操作指南
    Photoshop操作指南
    财经法规四-2
    财经法规四-1
    财经法规三-3
    财经法规复习三-2
    财经法规复习三-1
    财经法规复习卷一-2
    财经法规二-3
    财经法规二-2
  • 原文地址:https://www.cnblogs.com/andy0816/p/12049956.html
Copyright © 2011-2022 走看看