1. RESTful API 设计规范的核心约束中资源命名、HTTP 方法语义、状态码使用、版本化策略如何统一?
RESTful API 设计规范的核心约束:资源命名、HTTP 方法语义、状态码使用、版本化策略如何统一?
- 资源命名(复数名词)
- HTTP 方法语义(GET/POST/PUT/PATCH/DELETE)
- 状态码使用
(1)资源命名:资源用复数名词(/users、/orders),层级用 /(/orders/{id}/items),避免动词(动词应拆成子资源或动作)。 (2)HTTP 方法语义:GET(读,幂等)、POST(创建/动作)、PUT(全量替换,幂等)、PATCH(部分更新,幂等)、DELETE(删除,幂等)。方法语义与语义一致,避免"GET 改状态"。 (3)状态码使用:2xx(成功)、3xx(重定向)、4xx(客户端错误:400/401/403/404/409)、5xx(服务端错误)。状态码语义准确,配合错误体。 (4)版本化策略:URL 版本(/v1/users)、Header 版本(Accept: application/vnd.api+json;version=1)、内容协商。统一选一种并保证向后兼容。 (5)统一:把这些约束固化为规范文档 + OpenAPI lint + 评审 checklist,保证团队一致。
RESTful 核心约束是"资源名词 + 方法语义 + 状态码 + 版本化"。资源用复数名词、方法语义分明、状态码准确、版本化统一,用 OpenAPI lint + 评审强制。
# OpenAPI 示例
GET /v1/users/{id} # 读用户
POST /v1/users # 创建用户
DELETE /v1/users/{id} # 删除用户