溫馨提示:
本文中可能包含表格,在手機屏幕上豎屏顯示時,一行內可顯示中文字符數量為20個左右,因部分表格單元格內容過長會導致自動換行,從而使得排版不太美觀。
另外,本文中可能包含高清圖片,在手機屏幕上預覽時,我們需要頻繁的進行放大縮小操作,這是相當麻煩的一件事情。
因此,如果條件允許,建議您坐在舒適的辦公桌前,沖泡一杯咖啡或者茶,在電腦上閱讀以獲得更好的體驗。
HTTP Status Code,即HTTP狀態碼,是用以表示HTTP(超文本傳輸協議)響應狀態的3位數字代碼。它由 RFC 2616 規范定義的,并得到 RFC 2518、RFC 2817、RFC 2295、RFC 2774 與 RFC 4918 等規范擴展。所有狀態碼的第一個數字代表了響應的五種狀態之一。狀態碼是HTTP / 1.1標準(RFC 7231)的一部分,其官方注冊表由互聯網號碼分配局(IANA,Internet Assigned Numbers Authority)維護。
W3C RFC 2616 規范:Hypertext Transfer Protocol -- HTTP/1.1
W3C HTTP協議規范:https://www.w3.org/Protocols/
IETF RFC 7231規范:https://tools.ietf.org/html/rfc7231
比如,當我用電腦瀏覽器成功打開簡書網站時,HTTP狀態碼為200,狀態消息為OK,這代表簡書網站成功為瀏覽器響應了本次請求。如圖:
當然,您肯定見過很多次大名鼎鼎的404,到底誰丟了?還是誰錯了?如圖:
下面將描述每個狀態碼,包括它可以遵循的方法的描述和響應中需要的任何元信息。
1、1xx: 信息
狀態碼 | 消息 | 描述 |
---|---|---|
100 | Continue | 服務器僅接收到部分請求,但是一旦服務器并沒有拒絕該請求,客戶端應該繼續發送其余的請求。 |
101 | Switching Protocols | 服務器轉換協議:服務器將遵從客戶的請求轉換到另外一種協議。 |
2、2xx: 成功
狀態碼 | 消息 | 描述 |
---|---|---|
200 | OK | 請求成功(其后是對GET和POST請求的應答文檔。) |
201 | Created | 請求被創建完成,同時新的資源被創建。 |
202 | Accepted | 供處理的請求已被接受,但是處理未完成。 |
203 | Non-authoritative Information | 文檔已經正常地返回,但一些應答頭可能不正確,因為使用的是文檔的拷貝。 |
204 | No Content | 沒有新文檔。瀏覽器應該繼續顯示原來的文檔。如果用戶定期地刷新頁面,而Servlet可以確定用戶文檔足夠新,這個狀態代碼是很有用的。 |
205 | Reset Content | 沒有新文檔。但瀏覽器應該重置它所顯示的內容。用來強制瀏覽器清除表單輸入內容。 |
206 | Partial Content | 客戶發送了一個帶有Range頭的GET請求,服務器完成了它。 |
3、3xx: 重定向
狀態碼 | 消息 | 描述 |
---|---|---|
300 | Multiple Choices | 多重選擇。鏈接列表。用戶可以選擇某鏈接到達目的地。最多允許五個地址。 |
301 | Moved Permanently | 所請求的頁面已經轉移至新的url。 |
302 | Found | 所請求的頁面已經臨時轉移至新的url。 |
303 | See Other | 所請求的頁面可在別的url下被找到。 |
304 | Not Modified | 未按預期修改文檔??蛻舳擞芯彌_的文檔并發出了一個條件性的請求(一般是提供If-Modified-Since頭表示客戶只想比指定日期更新的文檔)。服務器告訴客戶,原來緩沖的文檔還可以繼續使用。 |
305 | Use Proxy | 客戶請求的文檔應該通過Location頭所指明的代理服務器提取。 |
306 | Unused | 此代碼被用于前一版本。目前已不再使用,但是代碼依然被保留。 |
307 | Temporary Redirect | 被請求的頁面已經臨時移至新的url。 |
4、4xx: 客戶端錯誤
狀態碼 | 消息 | 描述 |
---|---|---|
400 | Bad Request | 服務器未能理解請求。 |
401 | Unauthorized | 被請求的頁面需要用戶名和密碼。 |
402 | Payment Required | 此代碼尚無法使用。 |
403 | Forbidden | 對被請求頁面的訪問被禁止。 |
404 | Not Found | 服務器無法找到被請求的頁面。 |
405 | Method Not Allowed | 請求中指定的方法不被允許。 |
406 | Not Acceptable | 服務器生成的響應無法被客戶端所接受。 |
407 | Proxy Authentication Required | 用戶必須首先使用代理服務器進行驗證,這樣請求才會被處理。 |
408 | Request Timeout | 請求超出了服務器的等待時間。 |
409 | Conflict | 由于沖突,請求無法被完成。 |
410 | Gone | 被請求的頁面不可用。 |
411 | Length Required "Content-Length" | 未被定義。如果無此內容,服務器不會接受請求。 |
412 | Precondition Failed | 請求中的前提條件被服務器評估為失敗。 |
413 | Request Entity Too Large | 由于所請求的實體的太大,服務器不會接受請求。 |
414 | Request-url Too Long | 由于url太長,服務器不會接受請求。當post請求被轉換為帶有很長的查詢信息的get請求時,就會發生這種情況。 |
415 | Unsupported Media Type | 由于媒介類型不被支持,服務器不會接受請求。 |
416 | Requested Range Not Satisfiable | 服務器不能滿足客戶在請求中指定的Range頭。 |
417 | Expectation Failed | 期望的請求頭字段對此服務器不滿足。 |
5、5xx: 服務器錯誤
狀態碼 | 消息 | 描述 |
---|---|---|
500 | Internal Server Error | 請求未完成。服務器遇到不可預知的情況。 |
501 | Not Implemented | 請求未完成。服務器不支持所請求的功能。 |
502 | Bad Gateway | 請求未完成。服務器從上游服務器收到一個無效的響應。 |
503 | Service Unavailable | 請求未完成。服務器臨時過載或當機。 |
504 | Gateway Timeout | 網關超時。 |
505 | HTTP Version Not Supported | 服務器不支持請求中指明的HTTP協議版本。 |
如果您不能靜下心來,不精心雕琢和打造自己的知識系統和技能體系,沉迷于點石成金亦或是拔苗助長等等的奇技淫巧之間,那都是事倍功半的瞎忙活!
古往今來,學習,沒有捷徑,除非出現科幻般的腦機互聯......但有拙法,那就是書山有路勤為徑,學海無涯苦作舟!更何況,日新月異知識爆炸的今天,態度猶豫和停止學習,那么等待您的,唯有叢林淘汰法則。
書,能讀完嗎?肯定不能,汗牛充棟!
書,能學完嗎?絕對可以,得讀經典。
好好學習,天天向上!繼續下一章...