簡體   English   中英

http代碼部分成功/錯誤

[英]http code for partual success / error

我有一項需要處理的項目列表的服務。

每個項目在后端一次都被處理,當所有項目完成后,服務將返回一個文檔,其中包含項目的原始列表,但每行的狀態為成功或失敗。

例:

放置-身體:

[
  {"item" : 1},
  {"item" : 2},
  {"item" : 3}
]

回應-正文:

[
  {"item" : 1, "state" : "OK"},
  {"item" : 2, "state" : "OK"},
  {"item" : 3, "state" : "FAILED"}
]

現在的問題是:如果其中一項失敗,應該使用哪個返回碼? 我似乎無法為此找到任何正確的匹配http狀態代碼,這是一個失敗,但是再一次不是,而是全部;)?

從HTTP的角度來看,這是成功的-我將返回200-請求已成功接收和處理。

然后由應用程序檢查是否一切正常。

但是,為了使生活更輕松,我可以在響應中添加一個錯誤字段?

更好的主意是使用207多狀態響應,但要在POST中發送數據。

上載/更新很多項目的事情經常發生這種情況。 在多狀態響應中,您可以將每個操作和特定響應對應起來,如下所示:

<response>
  <item id="1">
    <status>200 OK</status>
  </item>
  <item id="2">
    <status>403 Forbidden</status>
  </item>
</response>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM