2012-05-08 61 views
11

所以我有一個網站,接受HTTP-PUT爲特定的資源,例如。 /contact這將允許消費者更新聯繫人,假設他們已通過驗證。更新資源時,更新成功時將返回何種HTTP狀態碼?

因此,我更新記錄,一切都很好..現在我需要給消費者返回一些東西。

什麼是我應該返回的HTTP狀態碼?

如果這是一個HTTP-POST(即創建一個新資源),那麼我將返回一個201 Created並添加一個Location標頭屬性。

但是..我找不到任何有關如何做更新的線索。

乾杯:)

+0

非常好的問題,看起來像沒有標準的HTTP代碼,所以我只是返回一個200 OK。 –

回答

17

如果您要返回操作的表示(儘管工作正在進行但接近最後一次調用的「HTTP bis」奇怪地沒有提到its description of 200 OK中的PUT),200尤其合適。

如果您沒有返回任何形式的表示,請使用204 No Content向客戶表明它不需要更改其當前的「文檔視圖」。

+0

這個動作的表示是什麼?它是更新資源的表示還是它沿着「Blablabla成功更新」的方向 – rmoestl

+1

該行爲的表示形式將是「blablabla成功更新」,通常只有在以下情況下才值得:a)如果對客戶有用但特別是b)下一步做什麼的鏈接 – fumanchu

+0

感謝您澄清@fumanchu。 – rmoestl

5

200是適當的狀態代碼假設只放做了更新,並沒有創建資源。