【你想要知道的REST API 】2.REST API的设计原则

103 阅读1分钟

REST API 设计原则

这篇是我学习REST API的第二天记下的笔记,分享给大家,希望大家能学到点东西,有错误的地方也能在评论区提出来。

XML-API-JSON.jpg

1. 接收并使用JSON响应

  • JavaScript具有内置方法编码解码JSON
  • 几乎所有的网络技术都采用了JSON作为传输数据的标准。

2. 在接口路径使用名字而不是动词

// bad
/getAllStudent

// good
/students
  • 我们的HTTP请求方法已经有请求动词了;
  • 最好还是让HTTP方法告诉我们接口的作用并使用了什么方法。

3. 允许API过滤、排序和分页数据

  • 限制REST API 会返回的数据量;
  • 有利于节省并避免REST API请求过多导致服务器过载。
// 例如:
/student?limit=10&offset=25

4. REST API版本

  • 版本控制指示REST API功能和公开的资源;
  • 版本控制通常在REST API路径的开头使用/v1, /v2等。
// 例如:
https://school.com/v2/teacher

5. 使用缓存

  • 使用缓存能够提高性能;
  • 添加缓存,能够从本地缓存返回数据,而不是每次都需要查询数据库的数据;
  • 需要中间件(例如redi、apicache等)处理缓存。

6. 正确的HTTP错误处理

  • 如果一个错误或者异常从服务端抛出,使用HTTP调用的REST API,则会给出HTTP错误;
  • REST API应妥善处理错误并向调用的客户端返回HTTP响应代码。

7. 文档化

  • 在设计阶段开始构建API文档;
  • 也可以使用工具帮助构建API文档(如国内的Apifox,海外的Swapper)。