圖解HTTP《四》:返回結果的HTTP狀態碼
HTTP狀態碼負責表示客戶端HTTP請求的返回結果、標記伺服器端的處理是否正常。通知出現的錯誤等工作。
狀態碼告知從伺服器端返回的請求結果:
狀態碼的職責是當客戶端向伺服器端傳送請求時,描述返回的請求結果。藉助狀態碼,使用者可以知道伺服器端是正常處理了請求,還是出現了錯誤。
狀態碼如200 OK,以3位數字和原因短語組成。數字中的第一位指定了響應類別,後兩位無分類。
響應類別有以下5種:
- 1XX:資訊性狀態碼,接收的請求正在處理。
- 2XX:成功狀態碼,請求正常處理完畢。
- 3XX:重定向狀態碼,需要進行附加操作以完成請求。
- 4XX:客戶端錯誤狀態碼,伺服器無法處理請求。
- 5XX:伺服器錯誤狀態碼,伺服器處理請求出錯。
只要遵守狀態碼類別的定義,即使改變RFC2616中定義的狀態碼,或伺服器端自行建立狀態碼都沒問題。
2XX成功:
2XX的響應結果表明請求被正常處理了。
200 OK:
在響應報文內,隨狀態碼一起返回的資訊會因方法的不同而發生改變。比如:使用GET方法時,對應請求資源的實體會作為響應返回;而使用HEAD方法時,在響應中只返回實體的首部,不會返回實體的主體部分。
204 No Content:
該狀態碼代表伺服器接收的請求已成功處理,但在返回的響應報文中不含實體的主體部分。另外,也不允許返回任何實體的主體。一般在只需要從客戶端往伺服器傳送訊息,而對客戶端不需要傳送新資訊內容的情況下使用。
比如:當從瀏覽器發出請求處理後,返回204響應,那麼瀏覽器正在顯示的頁面不發生更新。
206 Pretial Content:
該狀態碼錶示客戶端進行了範圍請求,而伺服器成功執行了這部分的GET請求。響應報文中包含由Contnt-Range指定範圍的實體內容。
3XX 重定向:
3XX響應結果表明瀏覽器需要執行某些特殊的處理以正確處理請求。
301 Moved Permanently:
永久性重定向。該狀態碼錶示請求的資源已被分配了新的URI,以後應使用資源現在所指的URI,也就是說,如果已經把資源對應的URI儲存為書籤了,這時應該按Location首部欄位提示的URI重新儲存。
302 Found:
臨時性重定向。該狀態碼錶示請求的資源已被分配了新的URI,希望使用者本次能使用新的URI訪問。
和301 Moved Permanently狀態碼相似,但302狀態碼代表的資源不是被永遠移動,只是臨時性質的,換句話說,已移動的資源對應的URI將來還有可能發生改變。
303 See Other:
該狀態碼錶示由於請求對應的資源存在著另一個URI,應使用GET方法定向獲取請求的資源。
303狀態碼和302狀態碼有著相同的功能,但303狀態碼明確表示客戶端應當採用GET方法獲取資源,這點與302狀態碼有區別。
相關文章
- [前端 · 面試 ]HTTP 總結(四)—— HTTP 狀態碼前端面試HTTP
- 04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼前端HTTP協議圖解
- web頁面中http返回的狀態碼解釋WebHTTP
- HTTP狀態碼詳解HTTP
- 最無恥的 HTTP 常用狀態碼圖解HTTP圖解
- status 返回當前請求的http狀態碼HTTP
- HTTP的狀態碼HTTP
- HTTP狀態碼->HTTP Status CodeHTTP
- HTTP狀態碼(HTTP Status Code)HTTP
- http 狀態碼HTTP
- http狀態碼HTTP
- HTTP 常用狀態碼解釋HTTP
- HTTP協議狀態碼詳解(HTTP Status Code)HTTP協議
- Http協議狀態碼總結HTTP協議
- HTTP返回碼總結HTTP
- HTTP狀態碼的理解HTTP
- 常用的HTTP狀態碼HTTP
- 最全的 http 狀態碼HTTP
- [php]http的狀態碼PHPHTTP
- 常見的四類HTTP狀態碼介紹HTTP
- http狀態碼(全)HTTP
- Http狀態碼整理HTTP
- 常見的HTTP狀態碼HTTP
- HTTP協議的狀態碼HTTP協議
- 最全的HTTP響應狀態碼列表:除了404,HTTP狀態碼還有啥?HTTP
- 前端開發:HTTP狀態碼詳解前端HTTP
- HTTP方法及狀態碼HTTP
- HTTP狀態碼:415HTTP
- http狀態碼(搬運)HTTP
- 常見HTTP狀態碼HTTP
- HTTP 響應狀態碼HTTP
- 統一返回結果狀態資訊類
- 5種狀況下的HTTP狀態碼HTTP
- 常見Http狀態碼大全HTTP
- HTTP狀態碼列舉(PHP)HTTPPHP
- HTTP 狀態碼 和 git 命令HTTPGit
- HTTP協議(三):狀態碼HTTP協議
- HTTP 狀態碼對照表地址HTTP