HTTP 常用狀態碼解釋

xiaoxiunique發表於2019-05-08
狀態碼告知從伺服器端返回的請求結果

狀態碼的職責是當客戶端向伺服器端傳送請求時,描述返回的請求結果。藉助狀態碼,使用者可以知道伺服器端是正常處理了請求,還是出現了錯誤
HTTP 常用狀態碼解釋


圖:響應的狀態碼可描述請求的處理結果

狀態碼的類別

類別
原因短語
1xx
Informational(資訊性狀態碼)
接受的請求正在處理
2xx
Success(成功狀態碼)
請求正常處理完畢
3xx
Redirection(重定向狀態碼)
需要進行附加操作一完成請求
4xx
Client Error (客戶端錯誤狀態碼)
伺服器無法處理請求
5xx
Server Error(伺服器錯誤狀態碼)
伺服器處理請求出錯

2XX 成功
2XX 的響應結果表明請求被正常處理了

200
HTTP 常用狀態碼解釋


表示從客戶端發來的請求在伺服器端被正常處理了
在響應報文內,隨狀態碼一起返回的資訊會因方法的不同而發生改變。比如,使用 GET 方法時,對應請求資源的實體會作為響應返回;而使用 HEAD 方法時,對應請求資源的實體首部不隨報文主作為響應返回(即在響應中只返回首部,不會返回實體的主體部分

204 No Content
HTTP 常用狀態碼解釋


該狀態碼代表伺服器接收的請求已成功處理,但在返回的響應報文中不含實體的主體部分。另外,也不允許返回任何實體的主體。比如,當從瀏覽器發出請求處理後,返回 204 響應,那麼瀏覽器顯示的頁面不發生更新。
一般在只需要從客戶端往伺服器傳送資訊,而對客戶端不需要傳送新資訊內容的情況下使用

206 Partial Content
HTTP 常用狀態碼解釋


該狀態碼錶示客戶端進行了範圍請求,而伺服器成功執行了這部分的GET 請求。響應報文中包含由 Content-Range 指定範圍的實體內

3XX 重定向
3XX 響應結果表明瀏覽器需要執行某些特殊的處理以正確處理請求

301 Moved Permanently
HTTP 常用狀態碼解釋


永久性重定向。該狀態碼錶示請求的資源已被分配了新的 URI,以後應使用資源現在所指的 URI。也就是說,如果已經把資源對應的 URI儲存為書籤了,這時應該按 Location 首部欄位提示的 URI 重新儲存。
像下方給出的請求 URI,當指定資源路徑的最後忘記新增斜槓“/”,就會產生 301 狀態碼

302 Found
HTTP 常用狀態碼解釋


臨時性重定向。該狀態碼錶示請求的資源已被分配了新的 URI,希望使用者(本次)能使用新的 URI 訪問。

和 301 Moved Permanently 狀態碼相似,但 302 狀態碼代表的資源不是被永久移動,只是臨時性質的。換句話說,已移動的資源對應的URI 將來還有可能發生改變。比如,使用者把 URI 儲存成書籤,但不會像 301 狀態碼出現時那樣去更新書籤,而是仍舊保留返回 302 狀態碼的頁面對應的 URI

303 See Oth

HTTP 常用狀態碼解釋

該狀態碼錶示由於請求對應的資源存在著另一個 URI,應使用 GET方法定向獲取請求的資源

303 狀態碼和 302 Found 狀態碼有著相同的功能,但 303 狀態碼明確表示客戶端應當採用 GET 方法獲取資源,這點與 302 狀態碼有區別。

比如,當使用 POST 方法訪問 CGI 程式,其執行後的處理結果是希望客戶端能以 GET 方法重定向到另一個 URI 上去時,返回 303 狀態碼。雖然 302 Found 狀態碼也可以實現相同的功能,但這裡使用 303狀態碼是最理想的。

304 Not Modified
HTTP 常用狀態碼解釋


該狀態碼錶示客戶端傳送附帶條件的請求 時,伺服器端允許請求訪問資源,但未滿足條件的情況。304 狀態碼返回時,不包含任何響應的主體部分。304 雖然被劃分在 3XX 類別中,但是和重定向沒有關係

4XX 客戶端

400 Bad Request
HTTP 常用狀態碼解釋


該狀態碼錶示請求報文中存在語法錯誤。當錯誤發生時,需修改請求的內容後再次傳送請求。另外,瀏覽器會像 200 OK 一樣對待該狀態碼。

401 Unauthorization
HTTP 常用狀態碼解釋


該狀態碼錶示傳送的請求需要有通過 HTTP 認證(BASIC 認證、DIGEST 認證)的認證資訊。另外若之前已進行過 1 次請求,則表示用 戶認證失敗。

返回含有 401 的響應必須包含一個適用於被請求資源的 WWWAuthenticate 首部用以質詢(challenge)使用者資訊。當瀏覽器初次接收到 401 響應,會彈出認證用的對話窗

403 Forbidd

HTTP 常用狀態碼解釋

該狀態碼錶明對請求資源的訪問被伺服器拒絕了。伺服器端沒有必要給出拒絕的詳細理由,但如果想作說明的話,可以在實體的主體部分對原因進行描述,這樣就能讓使用者看到了。未獲得檔案系統的訪問授權,訪問許可權出現某些問題(從未授權的傳送源 IP 地址試圖訪問)等列舉的情況都可能是發生 403 的原因

404 Not Found
HTTP 常用狀態碼解釋


該狀態碼錶明伺服器上無法找到請求的資源。除此之外,也可以在伺服器端拒絕請求且不想說明理由時使

500 Internal Server Error
HTTP 常用狀態碼解釋


該狀態碼錶明伺服器端在執行請求時發生了錯誤。也有可能是 Web應用存在的 bug 或某些臨時的故障。

503 Service Unavailab
HTTP 常用狀態碼解釋


該狀態碼錶明伺服器暫時處於超負載或正在進行停機維護,現在無法處理請求。如果事先得知解除以上狀況需要的時間,最好寫入RetryAfter 首部欄位再返回給客戶




相關文章