目前,我們正在努力將OData的標準:返回一個包含Http 204狀態的主體是否有效?
http://www.odata.org/developers/protocols/operations
按照這個標準,如果執行對你的數據的PUT操作,您應該返回204個狀態碼。該標準規定:
當處理PUT請求服務器返回狀態204(無內容) 以指示成功時,不需要響應主體。
現在,根據別人的看法,有些地方聲稱,如果您要返回204,您絕對不應該返回響應主體 - 這不是一個是否需要的問題。
問題是我們需要返回一個正文。在這種情況下,我們正在對一批物品執行更新查詢,並且部分成功(即更新了一些,但有些不成功)是可能的。我們想告訴客戶失敗是什麼,響應機構是我能想到的唯一方式。
那麼做到這一點的「正確」方法是什麼?我應該摒棄W3C並返回一個正文?或者我應該藐視OData並返回一個不同的響應代碼?或者還有另外一種可能性?
+1比我的答案更具權威性。 – 2012-02-07 16:40:19
當更新的實體具有計算的字段時(例如,SQL實體中的計算列),因爲重新計算的值(或任何內容)將不會與204一起返回,從而強制另一個GET來獲取更新。 – 2015-07-20 16:11:16