HTTP協議的狀態碼都有哪些,有什麼好的辦法能速記且終身不忘嗎

工作難找,前端工程師工作更難找,大家好,我是左耳東,最近老是被問到http返回狀態碼,回答的都不算很好,記憶總算摸稜兩可。現在總結歸納一下這些罪惡的狀態碼,希望對同行夥伴有幫助,有備無患,未雨綢繆!關注我每日更新前端知識

協議是指計算機通信網絡中兩臺計算機之間進行通信所必須共同遵守的規定或規則,超文本傳輸協議(HTTP)是一種通信協議,它允許將超文本標記語言(HTML)文檔從Web服務器傳送到客戶端的瀏覽器

HTTP協議的狀態碼都有哪些,有什麼好的辦法能速記且終身不忘嗎

• “100″ : Continue(繼續) 初始的請求已經接受,客戶應當繼續發送請求的其餘部分。(HTTP 1.1新)

• “101″ : Switching Protocols(切換協議) 請求者已要求服務器切換協議,服務器已確認並準備進行切換。(HTTP 1.1新)

• “200″ : OK(成功) 一切正常,對GET和POST請求的應答文檔跟在後面。

• “201″ : Created(已創建)服務器已經創建了文檔,Location頭給出了它的URL。

• “202″ : Accepted(已接受)服務器已接受了請求,但尚未對其進行處理。

• “203″ : Non-Authoritative Information(非授權信息) 文檔已經正常地返回,但一些應答頭可能不正確,可能來自另一來源 。(HTTP 1.1新)。

• “204″ : No Content(無內容)未返回任何內容,瀏覽器應該繼續顯示原來的文檔。

• “205″ : Reset Content(重置內容)沒有新的內容,但瀏覽器應該重置它所顯示的內容。用來強制瀏覽器清除表單輸入內容(HTTP 1.1新)。

• “206″ : Partial Content(部分內容)服務器成功處理了部分 GET 請求。(HTTP 1.1新)

• “300″ : Multiple Choices(多種選擇)客戶請求的文檔可以在多個位置找到,這些位置已經在返回的文檔內列出。如果服務器要提出優先選擇,則應該在Location應答頭指明。

• “301″ : Moved Permanently(永久移動)請求的網頁已被永久移動到新位置。服務器返回此響應(作為對 GETHEAD 請求的響應)時,會自動將請求者轉到新位置。

• “302″ : Found(臨時移動)類似於301,但新的URL應該被視為臨時性的替代,而不是永久性的。注意,在HTTP1.0中對應的狀態信息是“Moved Temporatily”,出現該狀態代碼時,瀏覽器能夠自動訪問新的URL,因此它是一個很有用的狀態代碼。注意這個狀態代碼有時候可以和301替換使用。例如,如果瀏覽器錯誤地請求

http://host/~user(缺少了後面的斜槓),有的服務器返回301,有的則返回302。嚴格地說,我們只能假定只有當原來的請求是GET時瀏覽器才會自動重定向。請參見307。

• “303″ : See Other(查看其他位置)類似於301/302,不同之處在於,如果原來的請求是POST,Location頭指定的重定向目標文檔應該通過GET提取(HTTP 1.1新)。

• “304″ : Not Modified(未修改)自從上次請求後,請求的網頁未被修改過。原來緩衝的文檔還可以繼續使用,不會返回網頁內容。

• “305″ : Use Proxy(使用代理)只能使用代理訪問請求的網頁。如果服務器返回此響應,那麼,服務器還會指明請求者應當使用的代理。(HTTP 1.1新)

• “307″ : Temporary Redirect(臨時重定向)和 302(Found)相同。許多瀏覽器會錯誤地響應302應答進行重定向,即使原來的請求是POST,即使它實際上只能在POST請求的應答是303時才能重定向。由於這個原因,

HTTP 1.1新增了307,以便更加清除地區分幾個狀態代碼:當出現303應答時,瀏覽器可以跟隨重定向的GET和POST請求;如果是307應答,則瀏覽器只能跟隨對GET請求的重定向。(HTTP 1.1新)

HTTP協議的狀態碼都有哪些,有什麼好的辦法能速記且終身不忘嗎

• “400″ : Bad Request(錯誤請求)請求出現語法錯誤。

• “401″ : Unauthorized(未授權)客戶試圖未經授權訪問受密碼保護的頁面。應答中會包含一個WWW-Authenticate頭,瀏覽器據此顯示用戶名字/密碼對話框,然後在填寫合適的Authorization頭後再次發出請求。

• “403″ : Forbidden(已禁止) 資源不可用。服務器理解客戶的請求,但拒絕處理它。通常由於服務器上文件或目錄的權限設置導致。

• “404″ : Not Found(未找到)無法找到指定位置的資源。

• “405″ : Method Not Allowed(方法禁用)請求方法(GET、POST、HEADDELETE、PUT、TRACE等)禁用。(HTTP 1.1新)

• “406″ : Not Acceptable(不接受)指定的資源已經找到,但它的MIME類型和客戶在Accpet頭中所指定的不兼容(

HTTP 1.1新)。

• “407″ : Proxy Authentication Required(需要代理授權)類似於401,表示客戶必須先經過代理服務器的授權。(HTTP 1.1新)

• “408″ : Request Time-out(請求超時)服務器等候請求時超時。(HTTP 1.1新)

• “409″ : Conflict(衝突)通常和PUT請求有關。由於請求和資源的當前狀態相沖突,因此請求不能成功。(HTTP 1.1新)

• “410″ : Gone(已刪除)如果請求的資源已被永久刪除,那麼,服務器會返回此響應。該代碼與 404(未找到)代碼類似,但在資源以前有但現在已經不復存在的情況下,有時會替代 404 代碼出現。如果資源已被永久刪除,那麼,您應當使用 301 代碼指定該資源的新位置。(HTTP 1.1新)

• “411″ : Length

Required(需要有效長度)不會接受包含無效內容長度標頭字段的請求。(HTTP 1.1新)

• “412″ : Precondition Failed(未滿足前提條件)服務器未滿足請求者在請求中設置的其中一個前提條件。(HTTP 1.1新)

• “413″ : Request Entity Too Large(請求實體過大)請求實體過大,已超出服務器的處理能力。如果服務器認為自己能夠稍後再處理該請求,則應該提供一個Retry-After頭。(HTTP 1.1新)

• “414″ : Request-URI Too Large(請求的 URI 過長)請求的 URI(通常為網址)過長,服務器無法進行處理。

• “415″ : Unsupported Media Type(不支持的媒體類型)請求的格式不受請求頁面的支持。

• “416″ : Requested range not

satisfiable(請求範圍不符合要求)服務器不能滿足客戶在請求中指定的Range頭。(HTTP 1.1新)

• “417″ : Expectation Failed(未滿足期望值)服務器未滿足”期望”請求標頭字段的要求。

• “500″ : Internal Server Error(服務器內部錯誤)服務器遇到錯誤,無法完成請求。

• “501″ : Not Implemented(尚未實施) 服務器不具備完成請求的功能。例如,當服務器無法識別請求方法時,服務器可能會返回此代碼。

• “502″ : Bad Gateway(錯誤網關)服務器作為網關或者代理時,為了完成請求訪問下一個服務器,但該服務器返回了非法的應答。

• “503″ : Service Unavailable(服務不可用)服務器由於維護或者負載過重未能應答。通常,這只是一種暫時的狀態。

• “504″ : Gateway Time-out

(網關超時) 由作為代理或網關的服務器使用,表示不能及時地從遠程服務器獲得應答。(HTTP 1.1新)

• “505″ : HTTP Version not supported(HTTP 版本不受支持)不支持請求中所使用的 HTTP 協議版本。

HTTP協議的狀態碼都有哪些,有什麼好的辦法能速記且終身不忘嗎


分享到:


相關文章: