HTTP協議數據結構分析


一:網絡協議HHTP

  超文本傳輸協議

  RFC2616

二:HTTP報文主要結構

  1)Request

    Method(get,post) ---請求方式

    URL-------請求地址

    Header------請求頭

    Body--------請求體

  2)Response

    Status Code-------狀態碼

    Header--------響應頭

    Body--------響應體

三:HTTP狀態碼

  200:成功,這個成功只是表示服務器正常處理完成了,並不能表示邏輯的正確性

  301,320:跳轉,一般可以在header中看到location,即跳轉地址,區別是一個是臨時跳轉一個是固定跳轉

  304:未修改,服務器發現資源文件標識未變動,通知客戶端讀取本地緩存文件即可

  400:客戶端請求信息格式問題

  403:一般是禁止訪問,比如文件,目錄等存在,但做了訪問限制

  404:一般為文件,目錄不存在,但也可以將其他情況偽裝成為不存在

  500:出現這個一般都是服務端的代碼直接拋出異常導致

  502,503,504:這個類似,在網絡異常等情況下都可以出現,也有很多代碼拋出錯誤時候出現

 

四:HTTP常規Header信息與作用(Request)

  Host:必須存在,域名指定(類似與分類,但端口用於區分訪問那個域名)

  Accept:表示自身可接受的信息類容,類似建議,有子項

  User-Agent:客戶端標識信息(系統版本,瀏覽器,內核等)

  Cookie:特殊的信息存儲位置,用於自動交互,無需代碼干涉

  Referer:來源,即通過什么頁面或文件觸發的請求,如果是瀏覽器地址欄回車則沒有該值

  Connection:控制長短鏈接,告訴對方當前鏈接狀態(Keep-Alive,Close)

  Range:指定返回信息范圍(斷點持續子類使用)

  Content-Type:請求正文的類型,編碼等信息

  Content-Length:請求正文長度

  If-Modifiled-Since:緩存相關,本地文件的標識有效期

  If-None-Match:緩存相關,本地文件的特征碼,對應返回信息中的ETag

 

五:HTTP常規Header信息與作用(Reaponse)

  Date:時間,一般是服務器當前時間

  Content-Encoding:返回正文的壓縮編碼類型

  Content-Length:返回正文的長度

  Content-Type:返回正文的類型,編碼等信息

  Cache-Control:緩存機制以及策略,時間,方式等

  Etag:返回文件信息的特征碼

  Expires:返回文件信息的緩存有限期

  Set-Cookie:要求設置的Cookie,可以多次出現的頭信息

  Location:自動重定向到其他新的地址,一般狀態301,302時會出現

  Connection:控制長短鏈接,告訴對方當前鏈接狀態,默認Keep,當雙方都為Keep時則鏈接會在下次沿用

 


免責聲明!

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



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