HTTP请求的谓词有哪些?分别有什么作用
HTTP 请求的谓词(也叫请求方法,HTTP Methods)用于表明客户端希望服务器执行的操作类型。
常见的 HTTP 方法
- GET:获取资源(幂等,常用于查询)。
- POST:提交数据(非幂等,常用于新增)。
- PUT:整体更新资源,如果资源不存在则创建。
- PATCH:部分更新资源。
- DELETE:删除指定资源。
- HEAD:与 GET 类似,但只返回响应头,不返回主体(用于检查资源是否存在)。
- OPTIONS:查询服务器支持哪些请求方法,常用于跨域(CORS)预检请求。
较少使用但在协议中存在的方法
- TRACE:回显请求信息,主要用来测试和诊断。
- CONNECT:建立隧道,用于 TLS/SSL 代理(HTTPS)。
REST 风格 API 的 CRUD 与 HTTP 方法对应表,直观展示增删改查该用什么方法:
| 操作类型 (CRUD) | HTTP 方法 | 典型 URL 示例 | 行为说明 |
|---|---|---|---|
| Create(新增) | POST | POST /users | 在用户集合中创建一个新用户 |
| Read(读取) | GET | GET /users/123 | 获取 id=123 的用户信息 |
| Update(更新-整体) | PUT | PUT /users/123 | 替换 id=123 用户的全部信息(幂等) |
| Update(更新-部分) | PATCH | PATCH /users/123 | 修改 id=123 用户的部分字段 |
| Delete(删除) | DELETE | DELETE /users/123 | 删除 id=123 用户资源 |
补充说明
- GET 和 DELETE 通常是 幂等 的,多次调用不会改变结果。
- PUT 是 幂等 的,重复调用多次结果一样。
- POST 和 PATCH 一般 非幂等,重复调用可能产生多次新增或不同结果。
文章评论