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