PATCH
HTTP PATCH 请求方法用于对资源进行部分修改。
PATCH 在某种程度上类似于 CRUD 中的“更新”概念(总的来说,HTTP 与 CRUD 不同,两者不应混淆)。
PATCH 请求被视为一组关于如何修改资源的指令。将其与 PUT 进行对比;后者是资源的完整表示。
PATCH 不一定是幂等的,尽管它可以是。将其与 PUT 进行对比;后者始终是幂等的。“幂等”一词意味着任意数量的重复相同请求将使资源保持在相同状态。例如,如果自动递增计数器字段是资源的组成部分,则 PUT 会自然地覆盖它(因为它覆盖所有内容),但 PATCH 不一定如此。
PATCH(与 POST 类似)可能会对其他资源产生副作用。
要了解服务器是否支持 PATCH,服务器可以通过将其添加到 Allow 或 Access-Control-Allow-Methods(对于 CORS)响应标头中的列表中来宣传其支持。
另一个(隐式)表明 PATCH 被允许的迹象是 Accept-Patch 标头的存在,该标头指定服务器接受的补丁文档格式。
语法
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
[description of changes]
响应
规范
| 规范 |
|---|
| RFC 5789 |
另请参阅
204Allow,Access-Control-Allow-MethodsAccept-Patch– 指定服务器接受的补丁文档格式。