← 返回文章列表

REST 设计与资源建模入门

API入门

资源而不是动作

REST 的核心是把「事物」当资源,用 URI 标识,用 HTTP 方法(GET/POST/PUT/PATCH/DELETE)表示操作。反例是把动作写进路径,如 /getUser、/createOrder,这把 RPC 风格混进了 REST。

常用约定

方法含义幂等
GET读取是
POST新建否
PUT整体替换是
PATCH局部更新否
DELETE删除是

三个实践要点

  1. 复数资源名:用 /users 而非 /user,集合与单项用 /users/{id} 区分;
  2. 用状态码表达结果:201 新建成功、400 参数错误、401 未认证、404 不存在、500 服务端错误;
  3. 分页与过滤:列表用 ?page=2&size=20,避免一次返回全量拖垮接口。

两个反模式

  • 把动词当资源:与其用 POST /users/{id}/ban,不如用一个状态字段做 PATCH;
  • 忽略幂等:重试 POST 可能重复创建,关键写操作要配合幂等键。

动手试试

校验接口返回的 JSON:JSON 格式化。