HTTP狀態(tài)碼,我都是現(xiàn)查現(xiàn)用。 我以前記得幾個常用的狀態(tài)碼,比如200,302,304,404, 503。 一般來說我也只需要了解這些常用的狀態(tài)碼就可以了。 如果是做AJAX,REST,網(wǎng)絡爬蟲,機器人等程序。還是需要了解其他狀態(tài)碼。 本文我花了一個多月的時間把所有的狀態(tài)碼都總結了下,內(nèi)容太多,看的時候麻煩耐心點了。
HTTP狀態(tài)碼的學習資料到處都有,但是都是理論上講解。 本文介紹HTTP協(xié)議中的HTTP狀態(tài)碼(HTTP Status Code), 會對大部分的狀態(tài)碼都進行了詳細的實例講解。
要了解狀態(tài)碼,應該在實例中去理解狀態(tài)碼的意義,否則看了也會忘記的。
用Fiddler工具可以查看HTTP Request和Response, 還可以方便地查看Response中的狀態(tài)碼。
什么是HTTP狀態(tài)碼
HTTP狀態(tài)碼的作用是:Web服務器用來告訴客戶端,發(fā)生了什么事。
狀態(tài)碼位于HTTP Response 的第一行中,會返回一個”三位數(shù)字的狀態(tài)碼“和一個“狀態(tài)消息”。 ”三位數(shù)字的狀態(tài)碼“便于程序進行處理, “狀態(tài)消息”更便于人理解。
如下圖, 當客戶端請求一個不存在的URL的時候, Web服務器會返回 “HTTP/1.1 404 Not Found” 告訴瀏覽器客戶端。 服務器無法找到所請求的URL。
狀態(tài)碼分類
HTTP狀態(tài)碼被分為五大類, 目前我們使用的HTTP協(xié)議版本是1.1, 支持以下的狀態(tài)碼。隨著協(xié)議的發(fā)展,HTTP規(guī)范中會定義更多的狀態(tài)碼。
小技巧: 假如你看到一個狀態(tài)碼518, 你并不知道具體518是什么意思。 這時候你只要知道518是屬于(5XX,服務器錯誤就可以了)
已定義范圍 | 分類 | |
1XX | 100-101 | 信息提示 |
2XX | 200-206 | 成功 |
3XX | 300-305 | 重定向 |
4XX | 400-415 | 客戶端錯誤 |
5XX | 500-505 | 服務器錯誤 |