HTTP 方法完整参考表
HTTP 方法(HTTP Methods)定义客户端对资源执行的操作。本表覆盖 9 种标准方法,标注安全(Safe)、幂等(Idempotent)、是否携带请求体及典型用途,帮助正确选型。
| 方法 | 安全 | 幂等 | 请求体 | 说明 |
|---|---|---|---|---|
| GET | 是 | 是 | 否 | 获取资源表示,安全且幂等,可被缓存与收藏。 |
| HEAD | 是 | 是 | 否 | 同 GET 但不返回主体,仅返回头部(检查存在性/修改时间)。 |
| POST | 否 | 否 | 是 | 提交数据处理,常创建子资源,非安全非幂等。 |
| PUT | 否 | 是 | 是 | 用完整表示替换整个资源,幂等(重试安全)。 |
| PATCH | 否 | 否 | 是 | 对资源做局部修改(仅发送变更字段),非幂等。 |
| DELETE | 否 | 是 | 可选 | 删除资源,幂等(反复删同一资源结果一致)。 |
| OPTIONS | 是 | 是 | 否 | 查询目标支持的通信选项,常用于 CORS 预检。 |
| CONNECT | 否 | 否 | 否 | 建立到服务器的隧道(如通过代理的 HTTPS)。 |
| TRACE | 是 | 是 | 否 | 回显收到的请求,用于诊断;有安全风险常被禁用。 |
常见问题
GET 和 POST 有什么区别?
GET 用于获取资源,参数在 URL 中,安全且幂等,可被缓存和收藏;POST 用于提交数据,参数在请求体,非安全非幂等,默认不被缓存。
PUT 和 PATCH 有什么区别?
PUT 用完整资源表示替换整个目标(幂等);PATCH 只发送需要修改的字段做局部更新(非幂等)。
什么是幂等(Idempotent)?
同一请求执行一次与多次,对服务端状态的最终影响相同。GET/PUT/DELETE 是幂等的,POST/PATCH 不是。幂等性让客户端在超时后可安全重试。
OPTIONS 方法用来做什么?
返回目标资源支持的 HTTP 方法列表,最常见的用途是 CORS 预检请求,由浏览器在跨域请求前自动发出。