0

如果Restful Web服務無法分別更新或使用PUT或POST方法創建資源,應該使用什麼響應代碼?如果Restful webservice無法分別更新或使用PUT或POST方法創建資源。響應代碼應該是什麼?

PUT和POST方法失敗的響應代碼應該在200還是500範圍內。什麼應該是確切的代碼和可能的響應信息。

編輯:擴大問題GET和DELETE也
而同樣應該是什麼不成功GET故障代碼和DELETE請求。
例如:GET /profiles/lincoln - 指現有配置文件 - 因此返回200響應代碼(糾正我錯誤)。
但得到/profiles/mccain - 指的是不存在的配置文件 - 所以應該是什麼響應代碼

同樣地,對於刪除 -
例如:DELETE /movies/starwars - 是指現有的電影所以刪除是成功的(不知道什麼是成功響應碼應爲刪除 - PLZ評論)
但:DELETE /movies/planetofhumans - 指不存在的電影。那麼響應代碼應該是什麼。

+0

我通常使用Google的以下鏈接中提供的標準:https://developers.google。com/drive/v3/web/handle-errors –

回答

0

Stop making it hard。從4XX(客戶端錯誤)類

  • 返回一個狀態,如果服務器未能完成顯然有效:如果請求有語法錯誤或無法實現

    語義在RFC 7231

    • 描述請求:從5xx(服務器錯誤)類中返回一個狀態

    請求中指定的實際方法並不重要:它們都對每個狀態代碼使用相同的語義。

    除了對HEAD請求做出響應時,服務器應該發送一個包含錯誤情況說明的表示,以及它是否是臨時或永久狀態。

    您可以使用您喜歡的任何媒體類型進行表示 - 網站已使用多年HTML。如果您正在尋找特定的JSON,那麼Problem Details for HTTP APIs可能是一個不錯的選擇。

    GET /型材/麥凱恩 - 指的是不存在的配置文件 - 所以應該是什麼響應代碼

    404 NOT FOUND

    404(未找到)狀態代碼表示原始服務器沒有找到目標資源的當前代表或不願意透露目標資源的存在。

  • +0

    -so'DELETE/movies/planetofhumans' - 這指的是不存在的電影也會返回404.對嗎? – samshers

    相關問題