409 Conflict

HTTP 409 Conflict 客戶端錯誤響應狀態碼錶示請求與目標資源的當前狀態衝突。

WebDAV 遠端 Web 創作中,409 衝突響應是傳送給客戶端的錯誤,以便使用者可以解決衝突並重新提交請求。例如,如果請求建立集合 /a/b/c/d/,而 /a/b/c/ 不存在,則請求必須以 409 失敗。此外,當上傳的檔案比伺服器上現有檔案舊時,您可能會收到 409 響應,從而導致版本控制衝突。

在其他系統中,409 響應可用於特定於實現的目的,例如指示伺服器已收到多個更新同一資源的請求。

狀態

http
409 Conflict

示例

不允許併發任務

在以下示例中,我們想啟動一個自動化過程,該過程執行系統中的常見任務

http
POST /tasks HTTP/1.1
Host: example.com
Content-Type: application/json

{
  "task": "emailDogOwners",
  "template": "pickup"
}

在此實現中,伺服器不允許兩個併發作業執行並返回 409,為客戶端提供檢查他們是否打算執行該操作或執行不同任務的機會

http
HTTP/1.1 409 Conflict
Date: Wed, 26 Jun 2024 12:00:00 GMT
Server: Apache/2.4.1 (Unix)
Content-Type: application/json

{
  "code": "AutomationConflict",
  "task": "emailDogOwners",
  "message": "Task locked. Cannot start a new automation since job is already running.",
  "runningTaskId": "123"
}

規範

規範
HTTP 語義
# status.409

另見