Resful API是什么

文章目录

  • 摘要
  • 1、RESTful API是什么?
  • 2、RESTful是什么?
  • 参考资料

摘要

RESTful是整个网络应用程序设计风格和开发方式。而RESTful API是其中API的设计风格。

1、RESTful API是什么?

API接口在设计命名时,由版本/操作资源名称/操作资源变量组成,其中不包含操作的行为动词,增删查改等操作行为由http请求方法(POST、GET、DELETE、PUT)决定。例如:
Resful API是什么_第1张图片

2、RESTful是什么?

是整个网络应用程序设计风格和开发方式,包括

  • 接口设计的合理性和访问的幂等性:接口按第一章的风格设计和命名,访问要求满足同样的请求,重复操作产生的结果是一样的(幂等性)。幂等性的好处是,能够防止因网络问题重发请求和延迟抵达后的请求叠加,导致数据被重复叠加操作。例如,某个接口的功能是让数据库数据自增50,客户端访问该接口时,由于网络问题导致请求延迟抵达,而客户端认为该请求丢失了,所以重发一次请求,结果导致数据错误的自增了100。

    可以通过为该数据添加一个版本号去解决该问题,在请求时指定自增的是版本号为1的记录,更新完后数据版本号变为2,这样再有重复的请求去更新版本1数据将失败。

  • 响应结构的统一和规范性:假如返回响应是JSON格式的,访问任何接口返回的JSON格式数据应当是一样的。例如:

    {
        "code":0,
        "message": "sucessful",
        "data": "XXX"
    }
    
  • 采用无状态的方案:服务器不存储用户的状态信息。而是由客户端存储状态信息,例如:JWT鉴权,客户端浏览器Cookie存储用户登录信息,每次访问时,携带cookie,服务器只需要负责验证。这样的好处是能够减轻服务器压力;也能够避免在分布式系统中,用户登录请求和访问数据请求处理的服务器节点不一致,而导致访问失败的状况。

参考资料

什么是 REST API 一文读懂 (RESTful API)

如何优雅的设计RESTful API接口

你可能感兴趣的:(restful,开发语言)