zoukankan      html  css  js  c++  java
  • 对REST API的理解

    1、REST是什么?API是什么?

      Representational State Transfer,简称REST,RoyFielding博士在2000年他的博士论文中提出来的一种软件架构风格

      Application Programming Interface,简称API,程序员都懂吧自己写的接口就是API。

    2、REST API详解

      REST:

        是一种WEB应用的架构风格,它被定义为6个限制(详见3)。

      RESTful API:

        具有REST风格的API,用URL定位资源,用HTTP请求方法(GET、POST....)描述操作,用响应状态码(200、404、500....)表示操作结果。

      个人理解:

        就是类似自定义目录结构的风格的API,可以参考下自己的C盘,通过http请求调用api并返回状态码及接口数据

          域名/api/User/xxx/......

        简单易懂,方便维护

     

    个人感觉了解到这差不多了xdm

     

    -----------------------------------------------------------------六个限制分割线-----------------------------------------------------------------

     

     

    3、六个限制

      1)客户-服务器(CS 架构 Client-Server)

        分离客户端服务端,形成两个互不相关的业务,不需要共同维护。

      2)无状态(Stateless)
        独立填写该接口所有需要的信息,不依赖请求上下文(以前的请求或是之后的请求)的信息,让请求模式更加简单。

          优点1:业务上不需要进行很多复杂的逻辑判断(我猜的,没用过依赖上下文的API)

          优点2:方便排查问题进行维护,哪个API有问题清清楚楚不和上下文关联。

      3)缓存 (Cache)

        服务器返回信息要标记是否可以缓存,缓存信息可以减少不必要的交互次数(总不能八百年不更新的数据次次请求API吧)

      4)统一接口(Uniform Interface)
        格式风格上要统一吧,不然维护也太难了

        不仅是请求URL路径统一嗷,接口的参数还有代码啥的应该(我也不太确定)都要统一

      5)分层系统(Layered system)
        xxxxxxxxxx

      6)按需代码(Code-On-Demand 可选的)
        xxxxxxxxxx

      想到了补充吧,我也不太懂。。。

  • 相关阅读:
    GateWay的简单使用
    SpringCloud项目注册到Nacos
    Hystrix整合Gateway
    Nginx配置socket.io集群
    windows搭建git服务
    解决gitLab上新建分支,idea中找不到对应分支问题
    mybatis mapper.xml的特殊操作符
    Chrome添加Axure RP插件
    idea Tomcat部署时没有update classes and resources
    缓存穿透,缓存击穿,缓存雪崩解决方案分析【转载】
  • 原文地址:https://www.cnblogs.com/liyi2019/p/15181005.html
Copyright © 2011-2022 走看看