美文网首页
RESTful API 实践

RESTful API 实践

作者: 就做个人吧 | 来源:发表于2020-03-29 23:40 被阅读0次

    简介

    官方规范

    GET /collection:返回资源对象的列表(数组)
    GET /collection/resource:返回单个资源对象
    POST /collection:返回新生成的资源对象
    PUT /collection/resource:返回完整的资源对象
    PATCH /collection/resource:返回完整的资源对象
    DELETE /collection/resource:返回一个空文档
    

    但是目前使用PATCH较为少数,并且因为GET存在url长度限制,常用POST实现其语义。

    常用错误码

    200 OK - [GET]:服务器成功返回用户请求的数据,该操作是幂等的(Idempotent)。
    201 CREATED - [POST/PUT/PATCH]:用户新建或修改数据成功。
    204 NO CONTENT - [DELETE]:用户删除数据成功。
    400 INVALID REQUEST - [POST/PUT/PATCH]:用户发出的请求有错误,服务器没有进行新建或修改数据的操作,该操作是幂等的。
    401 Unauthorized - [*]:表示用户没有权限(令牌、用户名、密码错误)。
    403 Forbidden - [*] 表示用户得到授权(与401错误相对),但是访问是被禁止的。
    404 NOT FOUND - [*]:用户发出的请求针对的是不存在的记录,服务器没有进行操作,该操作是幂等的。
    500 INTERNAL SERVER ERROR - [*]:服务器发生错误,用户将无法判断发出的请求是否成功。
    

    客户端错误,使用4**,例如:入参错误。
    服务端错误,使用5**,例如:内部逻辑异常。

    常用返回体

    成功

    {
      "message": "OK",
      "data": {}
    }
    

    失败

    {
      "error": "Invalid API key"
    }
    

    概念

    RESTful架构,就是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。

    REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的。
    我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强、性能好、适宜通信的架构

    Fielding将他对互联网软件的架构原则,定名为REST,即Representational State Transfer的缩写。我对这个词组的翻译是"表现层状态转化"。
    如果一个架构符合REST原则,就称它为RESTful架构。

    参考

    理解RESTful架构 - 阮一峰

    RESTful API 设计指南 - 阮一峰

    相关文章

      网友评论

          本文标题:RESTful API 实践

          本文链接:https://www.haomeiwen.com/subject/swkpuhtx.html