作者 |?lpl
來(lái)源 | lpl (公眾號(hào):數(shù)據(jù)分析從0到1)
1涕癣、基本的響應(yīng)代碼
200("OK")
一切正常哗蜈。實(shí)體主體中的文檔(若存在的話)是某資源的表示。
400("Bad Request")
客戶端方面的問(wèn)題。實(shí)體主題中的文檔(若存在的話)是一個(gè)錯(cuò)誤消息距潘。希望客戶端能夠理解此錯(cuò)誤消息炼列,并改正問(wèn)題。
500("Internal Server Error")
服務(wù)期方面的問(wèn)題音比。實(shí)體主體中的文檔(如果存在的話)是一個(gè)錯(cuò)誤消息俭尖。該錯(cuò)誤消息通常無(wú)濟(jì)于事,因?yàn)榭蛻舳藷o(wú)法修復(fù)服務(wù)器方面的問(wèn)題洞翩。
301("Moved Permanently")
當(dāng)客戶端觸發(fā)的動(dòng)作引起了資源URI的變化時(shí)發(fā)送此響應(yīng)代碼稽犁。另外,當(dāng)客戶端向一個(gè)資源的舊URI發(fā)送請(qǐng)求時(shí)菱农,也發(fā)送此響應(yīng)代碼缭付。
404("Not Found") 和410("Gone")
當(dāng)客戶端所請(qǐng)求的URI不對(duì)應(yīng)于任何資源時(shí),發(fā)送此響應(yīng)代碼循未。404用于服務(wù)器端不知道客戶端要請(qǐng)求哪個(gè)資源的情況;410用于服務(wù)器端知道客戶端所請(qǐng)求的資源曾經(jīng)存在秫舌,但現(xiàn)在已經(jīng)不存在了的情況的妖。
409("Conflict")
當(dāng)客戶端試圖執(zhí)行一個(gè)”會(huì)導(dǎo)致一個(gè)或多個(gè)資源處于不一致?tīng)顟B(tài)“的操作時(shí),發(fā)送此響應(yīng)代碼足陨。
2嫂粟、狀態(tài)碼系列。
1XX:通知
1XX系列響應(yīng)代碼僅在與HTTP服務(wù)器溝通時(shí)使用墨缘。
100("Continue")? ?
重要程度:中等星虹,但(寫(xiě)操作時(shí))很少用。
表示:繼續(xù)镊讼】碛浚客戶端應(yīng)繼續(xù)其請(qǐng)求。
101("Switching Protocols")
重要程度:非常低蝶棋。
表示:切換協(xié)議卸亮。服務(wù)器根據(jù)客戶端的請(qǐng)求切換協(xié)議。只能切換到更高級(jí)的協(xié)議玩裙,例如兼贸,切換到HTTP的新版本協(xié)議
請(qǐng)求報(bào)頭:客戶端把Upgrade報(bào)頭設(shè)置為一組希望使用的協(xié)議。
響應(yīng)報(bào)頭:如果服務(wù)器同意切換協(xié)議吃溅,它就返回一個(gè)Upgrade報(bào)頭溶诞,說(shuō)明它將切換到那個(gè)協(xié)議,并附上一個(gè)空白行决侈。服務(wù)器不用關(guān)閉TCP鏈接螺垢,而是直接在該TCP連接上開(kāi)始使用新的協(xié)議。
2XX: 成功
2XX系列響應(yīng)代碼表明操作成功了。
200("OK")
200("OK")
重要程度:非常高甩苛。
表示:請(qǐng)求成功蹂楣。一般用于GET與POST請(qǐng)求
一般來(lái)說(shuō),這是客戶端希望看到的響應(yīng)代碼讯蒲。它表示服務(wù)器成功執(zhí)行了客戶端所請(qǐng)求的動(dòng)作痊土,并且在2XX系列里沒(méi)有其他更適合的響應(yīng)代碼了。
實(shí)體主體:對(duì)于GET請(qǐng)求墨林,服務(wù)器應(yīng)返回客戶端所請(qǐng)求資源的一個(gè)表示赁酝。對(duì)于其他請(qǐng)求,服務(wù)器應(yīng)返回當(dāng)前所選資源的一個(gè)表示旭等,或者剛剛執(zhí)行的動(dòng)作的一個(gè)描述酌呆。
201("Created")
重要程度:高。
表示:已創(chuàng)建搔耕。成功請(qǐng)求并創(chuàng)建了新的資源
當(dāng)服務(wù)器依照客戶端的請(qǐng)求創(chuàng)建了一個(gè)新資源時(shí)隙袁,發(fā)送此響應(yīng)代碼。
響應(yīng)報(bào)頭:Location報(bào)頭應(yīng)包含指向新創(chuàng)建資源的規(guī)范URI弃榨。
實(shí)體主體:應(yīng)該給出新創(chuàng)建資源的描述與鏈接菩收。若已經(jīng)在Location報(bào)頭里給出了新資源的URI,那么可以用新資源的一個(gè)表示作為實(shí)體主體鲸睛。
202("Accepted")
重要程度:中等娜饵。
表示:已接受。已經(jīng)接受請(qǐng)求官辈,但未處理完成
客戶端的請(qǐng)求無(wú)法或?qū)⒉槐粚?shí)時(shí)處理箱舞。請(qǐng)求稍后會(huì)被處理。請(qǐng)求看上去是合法的拳亿,但在實(shí)際處理它時(shí)有出現(xiàn)問(wèn)題的可能晴股。
203("Non-Authoritative Information")
重要程度:非常低。
表示:?非授權(quán)信息风瘦。請(qǐng)求成功队魏。但返回的meta信息不在原始的服務(wù)器,而是一個(gè)副本
這個(gè)響應(yīng)代碼跟200一樣万搔,只不過(guò)服務(wù)器想讓客戶端知道胡桨,有些響應(yīng)報(bào)頭并非來(lái)自該服務(wù)器--他們可能是從客戶端先前發(fā)送的一個(gè)請(qǐng)求里復(fù)制的,或者從第三方得到的瞬雹。
204("No Content")
重要程度:高昧谊。
表示:?無(wú)內(nèi)容。服務(wù)器成功處理酗捌,但未返回內(nèi)容呢诬。在未更新網(wǎng)頁(yè)的情況下涌哲,可確保瀏覽器繼續(xù)顯示當(dāng)前文檔
205("Reset Content")
重要程度:低。
表示:??重置內(nèi)容尚镰。服務(wù)器處理成功阀圾,用戶終端(例如:瀏覽器)應(yīng)重置文檔視圖」钒Γ可通過(guò)此返回碼清除瀏覽器的表單域
206("Partial Content")
重要程度:對(duì)于支持部分GET(partial GET)的服務(wù)而言“非常高”初烘,其他情況下“低”。
表示:??部分內(nèi)容分俯。服務(wù)器成功處理了部分GET請(qǐng)求
它跟200類似肾筐,但它用于對(duì)部分GET請(qǐng)求(即使用Range請(qǐng)求報(bào)頭的GET請(qǐng)求)的響應(yīng)。部分GET請(qǐng)求常用于大型二進(jìn)制文件的斷點(diǎn)續(xù)傳缸剪。
3XX 重定向
3XX系列響應(yīng)代碼表明:客戶端需要做些額外工作才能得到所需要的資源吗铐。它們通常用于GET請(qǐng)求。他們通常告訴客戶端需要向另一個(gè)URI發(fā)送GET請(qǐng)求杏节,才能得到所需的表示唬渗。那個(gè)URI就包含在Location響應(yīng)報(bào)頭里。
300("Multiple Choices")
重要程度:低拢锹。
表示:?多種選擇谣妻。請(qǐng)求的資源可包括多個(gè)位置,相應(yīng)可返回一個(gè)資源特征與地址的列表用于用戶終端(例如:瀏覽器)選擇
301("Moved Permanently")
重要程度:中等卒稳。
表示:永久移動(dòng)。請(qǐng)求的資源已被永久的移動(dòng)到新URI他巨,返回信息會(huì)包括新的URI充坑,瀏覽器會(huì)自動(dòng)定向到新URI。今后任何新的請(qǐng)求都應(yīng)使用新的URI代替
服務(wù)器知道客戶端試圖訪問(wèn)的是哪個(gè)資源染突,但它不喜歡客戶端用當(dāng)前URI來(lái)請(qǐng)求該資源捻爷。它希望客戶端記住另一個(gè)URI,并在今后的請(qǐng)求中使用那個(gè)新的URI份企。你可以通過(guò)這個(gè)響應(yīng)代碼來(lái)防止由于URI變更而導(dǎo)致老URI失效也榄。
302("Found")
重要程度:應(yīng)該了解,特別市編寫(xiě)客戶端時(shí)司志。但我不推薦使用它甜紫。
表示:臨時(shí)移動(dòng)。與301類似骂远。但資源只是臨時(shí)被移動(dòng)囚霸。客戶端應(yīng)繼續(xù)使用原有URI
303("See Other")
重要程度:高激才。
表示:?查看其它地址拓型。與301類似额嘿。使用GET和POST請(qǐng)求查看
304("Not Modified")
重要程度:高。
表示:未修改劣挫。所請(qǐng)求的資源未修改册养,服務(wù)器返回此狀態(tài)碼時(shí),不會(huì)返回任何資源压固∏蚶梗客戶端通常會(huì)緩存訪問(wèn)過(guò)的資源,通過(guò)提供一個(gè)頭信息指出客戶端希望只返回在指定日期之后修改的資源
305("Use Proxy")
重要程度:低邓夕。
表示:使用代理刘莹。所請(qǐng)求的資源必須通過(guò)代理訪問(wèn)
306 未使用
重要程度:無(wú)
表示:?已經(jīng)被廢棄的HTTP狀態(tài)碼
306 響應(yīng)代碼沒(méi)有在HTTP標(biāo)準(zhǔn)中定義過(guò)。
307("Temporary Redirect")
重要程度:高焚刚。
表示:?臨時(shí)重定向点弯。與302類似。使用GET請(qǐng)求重定向
4XX:客戶端錯(cuò)誤
這些響應(yīng)代碼表明客戶端出現(xiàn)錯(cuò)誤矿咕。不是認(rèn)證信息有問(wèn)題抢肛,就是表示格式或HTTP庫(kù)本身有問(wèn)題√贾客戶端需要自行改正捡絮。
400("Bad Request")
重要程度:高。
表示:?客戶端請(qǐng)求的語(yǔ)法錯(cuò)誤莲镣,服務(wù)器無(wú)法理解
401("Unauthorized")
重要程度:高福稳。
表示:?請(qǐng)求要求用戶的身份認(rèn)證
402("Payment Required")
重要程度:無(wú)。
表示:?保留瑞侮,將來(lái)使用
403("Forbidden")
重要程度:中等的圆。
表示:?服務(wù)器理解請(qǐng)求客戶端的請(qǐng)求,但是拒絕執(zhí)行此請(qǐng)求
404("Not Found")
重要程度:高半火。
表示:?服務(wù)器無(wú)法根據(jù)客戶端的請(qǐng)求找到資源(網(wǎng)頁(yè))越妈。通過(guò)此代碼,網(wǎng)站設(shè)計(jì)人員可設(shè)置"您所請(qǐng)求的資源無(wú)法找到"的個(gè)性頁(yè)面
405("Method Not Allowd")
重要程度:中等钮糖。
表示:?客戶端請(qǐng)求中的方法被禁止
406("Not Acceptable")
重要程度:中等梅掠。
表示:?服務(wù)器無(wú)法根據(jù)客戶端請(qǐng)求的內(nèi)容特性完成請(qǐng)求
407("Proxy Authentication Required")
重要程度:低。
表示:?請(qǐng)求要求代理的身份認(rèn)證店归,與401類似阎抒,但請(qǐng)求者應(yīng)當(dāng)使用代理進(jìn)行授權(quán)
408("Reqeust Timeout")
重要程度:低。
表示:?服務(wù)器等待客戶端發(fā)送的請(qǐng)求時(shí)間過(guò)長(zhǎng)娱节,超時(shí)
409("Conflict")
重要程度:高挠蛉。
表示:?服務(wù)器完成客戶端的 PUT 請(qǐng)求時(shí)可能返回此代碼,服務(wù)器處理請(qǐng)求時(shí)發(fā)生了沖突
410("Gone")
重要程度:中等肄满。
表示:?客戶端請(qǐng)求的資源已經(jīng)不存在谴古。410不同于404质涛,如果資源以前有現(xiàn)在被永久刪除了可使用410代碼,網(wǎng)站設(shè)計(jì)人員可通過(guò)301代碼指定資源的新位置
411("Length Required")
重要程度:低到中等掰担。
表示:?服務(wù)器無(wú)法處理客戶端發(fā)送的不帶Content-Length的請(qǐng)求信息
412("Precondition Failed")
重要程度:中等汇陆。
表示:?客戶端請(qǐng)求信息的先決條件錯(cuò)誤
413("Request Entity Too Large")
重要程度:低到中等。
表示:?由于請(qǐng)求的實(shí)體過(guò)大带饱,服務(wù)器無(wú)法處理毡代,因此拒絕請(qǐng)求。為防止客戶端的連續(xù)請(qǐng)求勺疼,服務(wù)器可能會(huì)關(guān)閉連接教寂。如果只是服務(wù)器暫時(shí)無(wú)法處理,則會(huì)包含一個(gè)Retry-After的響應(yīng)信息
414("Request-URI Too Long")
重要程度:低执庐。
表示:?請(qǐng)求的URI過(guò)長(zhǎng)(URI通常為網(wǎng)址)酪耕,服務(wù)器無(wú)法處理
415("Unsupported Media Type")
重要程度:中等。
表示:?服務(wù)器無(wú)法處理請(qǐng)求附帶的媒體格式
416("Requestd Range Not Satisfiable")
重要程度:低轨淌。
表示:?客戶端請(qǐng)求的范圍無(wú)效
417("Expectation Failed")
重要程度:中等迂烁。
表示:?服務(wù)器無(wú)法滿足Expect的請(qǐng)求頭信息
5XX 服務(wù)端錯(cuò)誤
這些響應(yīng)代碼表明服務(wù)器端出現(xiàn)錯(cuò)誤。一般來(lái)說(shuō)递鹉,這些代碼意味著服務(wù)器處于不能執(zhí)行客戶端請(qǐng)求的狀態(tài)盟步,此時(shí)客戶端應(yīng)稍后重試。有時(shí)躏结,服務(wù)器能夠估計(jì)客戶端應(yīng)在多久之后重試却盘。并把該信息放在Retry-After響應(yīng)報(bào)頭里。
5XX系列響應(yīng)代碼在數(shù)量上不如4XX系列多媳拴,這不是因?yàn)榉?wù)器錯(cuò)誤的幾率小谷炸,而是因?yàn)闆](méi)有必要如此詳細(xì)--對(duì)于服務(wù)器方面的問(wèn)題,客戶端是無(wú)能為力的禀挫。
500("Internal Server Error")
重要程度:高。
表示:?服務(wù)器內(nèi)部錯(cuò)誤拓颓,無(wú)法完成請(qǐng)求
501("Not Implemented")
重要程度:低语婴。
表示:?客戶端試圖使用一個(gè)服務(wù)器不支持的HTTP特性。
服務(wù)器不支持請(qǐng)求的功能驶睦,無(wú)法完成請(qǐng)求
502("Bad Gateway")
重要程度:低砰左。
表示:?作為網(wǎng)關(guān)或者代理工作的服務(wù)器嘗試執(zhí)行請(qǐng)求時(shí),從遠(yuǎn)程服務(wù)器接收到了一個(gè)無(wú)效的響應(yīng)
503("Service Unavailable")
重要程度:中等到高场航。
表示:?由于超載或系統(tǒng)維護(hù)缠导,服務(wù)器暫時(shí)的無(wú)法處理客戶端的請(qǐng)求。延時(shí)的長(zhǎng)度可包含在服務(wù)器的Retry-After頭信息中
504("Gateway Timeout")
重要程度:低溉痢。
表示:?充當(dāng)網(wǎng)關(guān)或代理的服務(wù)器僻造,未及時(shí)從遠(yuǎn)端服務(wù)器獲取請(qǐng)求
505("HTTP Version Not Supported")
重要程度: 非常低憋他。
表示:?當(dāng)服務(wù)器不支持客戶端試圖使用的HTTP版本時(shí)發(fā)送此響應(yīng)代碼。