HTTP 请求方法

HTTP 定义了一组请求方法,用于指示请求的目的以及请求成功时所期望的结果。尽管它们也可以是名词,但这些请求方法有时被称为 HTTP 动词。每个请求方法都有自己的语义,但有些特性是多个方法共享的,特别是请求方法可以是安全的(safe)幂等的(idempotent)可缓存的(cacheable)

GET

GET 方法请求指定资源的表示。使用 GET 的请求应仅用于检索数据,不应包含请求内容

HEAD 方法请求与 GET 请求相同的响应,但没有响应体。

POST

POST 方法向指定资源提交一个实体,通常导致服务器上的状态改变或副作用。

PUT

PUT 方法用请求内容替换目标资源的所有当前表示。

DELETE

DELETE 方法删除指定资源。

CONNECT

CONNECT 方法建立到由目标资源标识的服务器的隧道。

OPTIONS

OPTIONS 方法描述目标资源的通信选项。

TRACE

TRACE 方法沿通往目标资源的路径执行消息环回测试。

PATCH

PATCH 方法对资源应用局部修改。

安全、幂等和可缓存的请求方法

下表列出了 HTTP 请求方法及其在安全性、可缓存性和幂等性方面的分类。

方法 安全 幂等 可缓存
GET
HEAD
OPTIONS
TRACE
PUT
DELETE
POST 有条件的*
PATCH 有条件的*
CONNECT

* 当响应明确包含新鲜度(freshness)信息和匹配的Content-Location 头时,POSTPATCH 是可缓存的。

规范

规范
HTTP 语义
# GET
HTTP 语义
# DELETE
HTTP 语义
# OPTIONS
HTTP 语义
# HEAD
HTTP 语义
# CONNECT
HTTP 语义
# POST
HTTP 语义
# PUT

浏览器兼容性

另见