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– 指定伺服器接受的補丁文件格式。