请求方法

最后更新于:2022-04-01 22:45:50

## 请求方法 * 如果请求头中存在 `X-HTTP-Method-Override` 或参数中存在 `_method`(拥有更高权重),且值为`GET`, `POST`, `PUT`, `DELETE`, `PATCH`, `OPTION`, `HEAD` 之一,则视作相应的请求方式进行处理 * `GET`, `DELETE`, `HEAD` 方法,参数风格为标准的 `GET` 风格的参数,如 `url?a=1&b=2` * `POST`, `PUT`, `PATCH`, `OPTION` 方法 * 默认情况下请求实体会被视作标准 json 字符串进行处理,当然,依旧推荐设置头信息的`Content-Type` 为 `application/json` * 在一些特殊接口中(会在文档中说明),可能允许 `Content-Type` 为 `application/x-www-form-urlencoded` 或者 `multipart/form-data` ,此时请求实体会被视作标准 `POST` 风格的参数进行处理 关于方法语义的说明: * `OPTIONS` 用于获取资源支持的所有 HTTP 方法 * `HEAD` 用于只获取请求某个资源返回的头信息 * `GET` 用于从服务器获取某个资源的信息 * 完成请求后返回状态码 `200 OK` * 完成请求后需要返回被请求的资源详细信息 * `POST` 用于创建新资源 * 创建完成后返回状态码 `201 Created` * 完成请求后需要返回被创建的资源详细信息 * `PUT` 用于完整的替换资源或者创建指定身份的资源,比如创建 id 为 123 的某个资源 * 如果是创建了资源,则返回 `201 Created` * 如果是替换了资源,则返回 `200 OK` * 完成请求后需要返回被修改的资源详细信息 * `PATCH` 用于局部更新资源 * 完成请求后返回状态码 `200 OK` * 完成请求后需要返回被修改的资源详细信息 * `DELETE` 用于删除某个资源 * 完成请求后返回状态码 `204 No Content` 相关资料: * [RFC 7231 中对请求方法的定义](http://tools.ietf.org/html/rfc7231#section-4.3) * [RFC 5789](http://tools.ietf.org/html/rfc5789) - PATCH 方法的定义 * [维基百科](http://zh.wikipedia.org/wiki/%E8%B6%85%E6%96%87%E6%9C%AC%E4%BC%A0%E8%BE%93%E5%8D%8F%E8%AE%AE#.E8.AF.B7.E6.B1.82.E6.96.B9.E6.B3.95)
';