HTTP協議

一:HTTP協議

HTTP協議:超文本傳輸協議.  主要用於傳輸文本信息. 


二:HTTP協議的版本

   http0.9 :只有基本的文本 GET 功能。

   http1.0 : 引入MIME 完善的請求/響應模型,並將協議補充完整。

   http1.1 :在 1.0 基礎上進行更新,增加了如 長久連接 keep-alive 與 chunked 等功能。


三:HTTP協議請求的方法有哪些

   GET:  獲取數據

   HEAD: 響應首部

   POST: 基於html表單向服務器提交數據.  服務器通常需要存儲數據.

   PUT : 向服務器發送資源.通常是文件.不是數據.

   DELETE: 刪除資源. 

   OPTION: 探測服務器對請求的URL所支持使用的請求方法.

   TRACE:  跟一次請求中間所經過的代理.


四:HTTP響應的狀態碼

   1**   :信息性狀態碼

   2**   :成功狀態碼

   3**   :重定向狀態碼.

      301:永久重定向, 302:臨時重定向, 會在響應報文中使用location

      304:沒有做任何修改

   4**   :客戶端錯誤   404:請求錯誤. 403:沒有權限. 405:使用的方法不被允許.

   5**   :服務器端錯誤.500 :服務器內部錯誤.  502:錯誤網關. 503:服務不可用.


五:HTTP協議首部

wKiom1WKu5qAm25LAAQKcXR7QN4033.jpg

   1)request: 請求協議首部

       

client-IP
HOST: 請求主機
referer:指明瞭請求當前資源的原始資源的URL
user-agent: 用戶代理
accept:能夠接受的字符集. 服務端能夠發送的媒體類型.
accept-charset:
accept-encoding:  壓縮方式
accept-language:  請求的語言
cookie:跟安全相關請求.

  

   2)response: 響應協議首部

age:資源可以緩存的時長
server:向客戶說明自己的程序名稱和版本.
協商類
 vary:首部列表  服務器會挑選一個最適宜的版本發送給客戶端.
安全相關
 WWW-authentication:
 set-cookie


   3)通用首部

 

connecttion : 定義C/S之間關於請求,響應的有關選項.
cache-control: 緩存控制.

   4)實體首部

 

location: 資源的新位置.
   allow:允許對此資源使用的請求方法.
內容相關
   content-encoding.壓縮
   content-language:
   content-length
   content-location
   content-type
緩存相關

六:HTTP協議的一些特性

  http是無狀態,任何資源都要進行三次握手四次斷開, 不能對用戶進行認證.爲了避免每次訪問一個頁面都要登錄,出現了cookie技術 記錄用戶賬號和密碼.但這種方法不安全.set-cookie. 爲了減少每次連接都要進行三次握手,四次斷開出現了keep-alive技術


七:一次HTTP事務過程 (站在服務器角度)

 

      1)建立連接
      2)接受請求
      3)處理請求
      4)訪問資源
      5)構建響應
      6)發送響應
      7)記錄日誌   (一次I/O 操作,用異步寫入方式,先寫入到內存中,隔一段時間在寫入到磁盤中)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章