伺服器向客戶端返回的常見狀態碼和提示資訊
阿新 • • 發佈:2019-01-22
- 200 OK – [GET]:伺服器成功返回使用者請求的資料,該操作是冪等的(Idempotent)。
- 201 CREATED – [POST/PUT/PATCH]:使用者新建或修改資料成功。
- 202 Accepted – [*]:表示一個請求已經進入後臺排隊(非同步任務)
- 204 NO CONTENT – [DELETE]:使用者刪除資料成功。
- 400 INVALID REQUEST – [POST/PUT/PATCH]:使用者發出的請求有錯誤,伺服器沒有進行新建或修改資料的操作,該操作是冪等的。
- 401 Unauthorized – [*]:表示使用者沒有許可權(令牌、使用者名稱、密碼錯誤)。
- 403 Forbidden – [*] 表示使用者得到授權(與401錯誤相對),但是訪問是被禁止的。
- 404 NOT FOUND – [*]:使用者發出的請求針對的是不存在的記錄,伺服器沒有進行操作,該操作是冪等的。
- 406 Not Acceptable – [GET]:使用者請求的格式不可得(比如使用者請求JSON格式,但是隻有XML格式)。
- 410 Gone -[GET]:使用者請求的資源被永久刪除,且不會再得到的。
- 422 Unprocesable entity – [POST/PUT/PATCH] 當建立一個物件時,發生一個驗證錯誤。
- 500 INTERNAL SERVER ERROR – [*]:伺服器發生錯誤,使用者將無法判斷髮出的請求是否成功。
下面列出了GET,DELETE,PUT和POST的典型用法:
GET
- 安全且冪等
- 獲取表示
- 變更時獲取表示(快取)
- 200(OK) - 表示已在響應中發出
- 204(無內容) - 資源有空表示
- 301(Moved Permanently) - 資源的URI已被更新
- 303(See Other) - 其他(如,負載均衡)
- 304(not modified)- 資源未更改(快取)
- 400 (bad request)- 指代壞請求(如,引數錯誤)
- 404 (not found)- 資源不存在
- 406 (not acceptable)- 服務端不支援所需表示
- 500 (internal server error)- 通用錯誤響應
- 503 (Service Unavailable)- 服務端當前無法處理請求
POST
- 不安全且不冪等
- 使用服務端管理的(自動產生)的例項號建立資源
- 建立子資源
- 部分更新資源
- 如果沒有被修改,則不過更新資源(樂觀鎖)
- 200(OK)- 如果現有資源已被更改
- 201(created)- 如果新資源被建立
- 202(accepted)- 已接受處理請求但尚未完成(非同步處理)
- 301(Moved Permanently)- 資源的URI被更新
- 303(See Other)- 其他(如,負載均衡)
- 400(bad request)- 指代壞請求
- 404 (not found)- 資源不存在
- 406 (not acceptable)- 服務端不支援所需表示
- 409 (conflict)- 通用衝突
- 412 (Precondition Failed)- 前置條件失敗(如執行條件更新時的衝突)
- 415 (unsupported media type)- 接受到的表示不受支援
- 500 (internal server error)- 通用錯誤響應
- 503 (Service Unavailable)- 服務當前無法處理請求
PUT
- 不安全但冪等
- 用客戶端管理的例項號建立一個資源
- 通過替換的方式更新資源
- 如果未被修改,則更新資源(樂觀鎖)
- 200 (OK)- 如果已存在資源被更改
- 201 (created)- 如果新資源被建立
- 301(Moved Permanently)- 資源的URI已更改
- 303 (See Other)- 其他(如,負載均衡)
- 400 (bad request)- 指代壞請求
- 404 (not found)- 資源不存在
- 406 (not acceptable)- 服務端不支援所需表示
- 409 (conflict)- 通用衝突
- 412 (Precondition Failed)- 前置條件失敗(如執行條件更新時的衝突)
- 415 (unsupported media type)- 接受到的表示不受支援
- 500 (internal server error)- 通用錯誤響應
- 503 (Service Unavailable)- 服務當前無法處理請求
DELETE
- 不安全但冪等
- 刪除資源
- 200 (OK)- 資源已被刪除
- 301 (Moved Permanently)- 資源的URI已更改
- 303 (See Other)- 其他,如負載均衡
- 400 (bad request)- 指代壞請求
- 404 (not found)- 資源不存在
- 409 (conflict)- 通用衝突
- 500 (internal server error)- 通用錯誤響應
- 503 (Service Unavailable)- 服務端當前無法處理請求