1. 面向开发者的 Web 技术
  2. HTTP
  3. 参考
  4. HTTP 请求方法
  5. PATCH

此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

PATCH

HTTP PATCH 请求方法用于对资源进行部分修改。

PATCH 有点类似于 CRUD 中的"更新"概念(一般来说,HTTP 与 CRUD 不同,两者不应混淆)。

PATCH 请求是一组关于如何修改资源的指令,与 PUT 形成对比;后者是一个资源的完整表述。

PATCH 并不需要是幂等的,这与 PUT 形成鲜明对比;后者始终是幂等的。"幂等(idempotent)"一词意味着,任何数量的重复、相同的请求都会使资源处于相同的状态。例如,如果一个自动递增的计数器字段是资源的一个组成部分,那么 PUT 将自然地覆盖它(因为它覆盖一切),但对于 PATCH 则不一定如此。

PATCHPOST 一样,可能会对其他资源产生副作用。

要知道一个服务器是否支持 PATCH,服务器可以通过将其加入 AllowAccess-Control-Allow-Methods(用于 CORS)响应标头中的列表来宣告其支持。

另外一个(隐式)表明允许 PATCH 方法的指示为 Accept-Patch 标头的存在,这个标头明确了服务器端可以接受补丁文档的格式。

请求是否有主体
成功的响应是否有主体 可能有
安全
幂等
可缓存
允许在 HTML 表单中使用 不允许

语法

http
PATCH /file.txt HTTP/1.1

示例

请求

http
PATCH /file.txt HTTP/1.1
Host: www.example.com
Content-Type: application/example
If-Match: "e0023aa4e"
Content-Length: 100
[描述变化情况]

响应

任何 2xx 状态码都代表成功的响应。

以下示例使用了 204 响应码,因为响应不携带任何主体。200 响应可能携带了响应体。

http
HTTP/1.1 204 No Content
Content-Location: /file.txt
ETag: "e0023aa4f"

规范

Specification
RFC 5789

参见

Help improve MDN

Learn how to contribute

This page was last modified on by MDN contributors.

AltStyle によって変換されたページ (->オリジナル) /