http協議(四)http狀態碼


一:http狀態碼

表示客戶端http請求的返回結果、標記服務器端的處理是否正常、通知出現的錯誤等工作

狀態碼的類別如下:

http狀態碼種類繁多,大概有60多種,實際上經常使用的只有14種,下面為一一介紹

 

1、2XX 成功:請求被正常處理

1.1 200 OK

表示從客戶端發來的請求在服務器端被正常處理

1.2 204 No Content

表示服務器接收的請求以成功處理,但沒有資源可返回,即:響應報文中不含實體的主體部分

1.3 206 Partial Content

表示客戶端進行了范圍請求且服務器成功執行了這部分的GET請求,響應報文中包含由Content_Range指定范圍的實體內容

“Content_Range為請求首部的一種類型,后面的隨筆會講到”

 

2、3XX 重定向: 服務器需要執行某些特殊處理以正確處理請求(即URI地址或者資源的緩存的資源有效時間過期)

2.1 301 Moved Permanently

永久性重定向:表示請求的資源已被分配了新的URI,以后應使用資源現在的URI,如果已經保存了書簽,這時候應該按照Location首部提示的URI重新保存

2.2 302 Found

臨時性重定向:表示請求的資源已被分配到了新的URI,希望(本次)能使用新的URI訪問

2.3 303 See Other

表示請求對應的資源存在另一個URI,應該使用GET方法定向獲取請求的資源

PS:當301、302、303響應狀態碼返回,幾乎所有瀏覽器都會把POST改成GET,並刪除請求報文內的主體,之后請求自動再次發送

301、302標准禁止將POST改為GET,但實際中都會允許這么做~~~GG

2.4 304 Not Modified

表示客戶端發送得附帶條件的請求時,服務器運行請求訪問,但未滿足條件的情況,304返回時,不包含任何響應的主體部分

附帶條件:采用GET方法的請求報文中包含If-......條件的任一首部,后面的隨筆中介紹

2.5 307 Temporary Redirect

臨時重定向:禁止將POST轉換為GET,該狀態碼會嚴格遵守瀏覽器標准

 

3、客戶端錯誤:4XX的響應結果表明客戶端是發生錯誤的原因所在

3.1 400 Bad Ruquest

請求報文存在語法錯誤

3.2 401 Unauthorized

發送的請求需要有通過http認證(BASIC認證、DIGEST認證)的認證信息

PS:若之前已經進行了一次請求,則表示用戶認證失敗

       返回含有401的響應必須包含一個適用於被請求資源的WWW-Authenticate首部用來質詢用戶信息

3.3 403 Forbidden

對請求資源的訪問被服務器拒絕(服務端沒有必要給出拒絕的詳細理由,如果想做說明,可在實體主體部分對原因進行描述)

舉例:未獲得文件系統的訪問授權、訪問權限出現某些問題等

3.4 404 Not Found

服務器上無法找到請求的資源

 

4、 5XX服務器錯誤:服務器本身發生錯誤

4.1 500 Internal Server Error

服務器端執行請求時發生錯誤

4.2 503 Server Unavailable

服務器暫時處於超負載或者正在停機維護,現在無法處理請求      

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM