04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

zhaoyezi發表於2018-09-04

HTTP狀態碼是表示客戶端HTTP請求的返回結果。標記伺服器端的處理是否正常、通知出現的錯誤等。

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

1. 200 成功

表示客戶端的請求被伺服器端正常處理

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

2. 204 No Content

表示客戶端請求被伺服器端成功處理,但是返回的響應報文中不含實體的主體部分。也不允許返回任何實體的主體。
當瀏覽器接收到的請求時204,瀏覽器頁面不發生更新。

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

3. 206 Partial Content

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

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

4. 301 Moved Permanently

永久性重定向

  • 對於資源請求,原來的url響應頭中location的url而言,資源應該對應location中的url
  • 對於post請求的重定向,還是需要使用者確認之後才能重定向,並且應該以post方法發出重定向請求。
  • 資源對應的路徑應該是location中返回的url,而不再是原請求地址

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

5. 302 Found

臨時性重定向

  • location中的地址不應該被認為是資源路徑,在後續的請求中應該繼續使用原地址
  • 原請求是post,則不能自動進行重定向;原請求是get,可以自動重定向

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

6. 303 See Other

臨時性重定向: 同302一致,區別在於:原請求不論是GET,還是POST,都能自動進行重定向

7. 304 Not Modified(與重定向無關)

客戶端發起附帶條件請求時,伺服器端允許訪問請求資源,但未滿足條件的情況。304 狀態碼返回時, 不包含任何響應 的主體部分。

  • 附帶條件請求: 指採用 GET方法的請求報文中包含 If-Match, If-ModifiedSince, If-None-Match, If-Range,If-Unmodified-Since 中任一首部。

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

8. 307 Temporary Redirect

臨時性重定向: 同302意義相同,307 會遵照瀏覽器標準:

  • 原請求是post,則不能自動進行重定向;原請求是get,可以自動重定向

9. 400

該狀態表示請求報文存在語法錯誤

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

10. 401 Unauthorized

該狀態表示傳送的請求需要通過HTTP認證的認證資訊。

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

11. 403 Forbidden

表明請求資源的訪問被伺服器拒絕。未獲得檔案的訪問授權、訪問許可權出現某些問題等都會出現403。

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

12. 404 Not Found

表明伺服器上無法找到請求的資源。或者伺服器端拒絕請求且不想說明理由時使用。

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

14. 500 Internal Server Error

表明伺服器端在執行請求時發生了錯誤,也可能是Wrb應用存在的bug或面臨的故障。

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

15. 503 Service Unavaliable

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

04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼

相關文章