内容目录
概述
Restful API资源是重中之重。
设计关键点
- 资源
- HTTP方法
- Paths
- HTTP状态码
- 版本控制
- 错误处理
详细描述一下
-
资源
我们需要先明确要操作的资源。例如:在实际项目中,我们需要操作的资源:用户,商品,订单等等,资源通常用名词表示,例如:# 用户 /users # 商品 /products # 订单 /orders
-
HTTP方法
使用标准的HTTP方法来表示对资源的操作。- GET:用于获取资源
- POST: 用于创建资源
- PUT: 用于完全更新资源
- PATH: 用于部分更新资源
- DELETE: 用户删除资源
例如:# 获取所有用户 GET /users # 创建用户 POST /users # 完全更新用户 PUT /users/{username} # 部分更新用户 PATCH /users/{username} # 删除用户 DELETE /users/{username}
-
Paths
保持URI结构清晰和有意义。
例如:# 获取全部用户 GET /users # 获取某个用户的所有订单 GET /users/{username}/orders # 获取某个用户的某个订单 GET /users/{usernames}/orders/{orderNo} # 分页获取所有用户 GET /users/page # 分页获取所有用户的订单 GET /users/orders/page # 分页获取某个用户的所有订单 GET /users/{username}/orders/page
4. HTTP状态码
返回适合的HTTP状态码来表示操作的结果。HTTP状态码意义如下:
- 1xx:信息性 - 传达传输协议级别的信息。
- 2xx:成功 - 表示客户端的请求已成功接受。
- 3xx:重定向 - 表示客户端必须采取一些额外的行动以完成其请求。
- 4xx:客户端错误 - 此类错误状态码指向客户端。
- 5xx:服务器错误 - 服务器对这些错误状态码负责。
5. 版本控制
如果考虑API未来会有重大变更或者预先考虑API兼容性问题可以考虑在path中增加/v1, /v2进行版本控制。
6. 错误处理