請求通路文本和圖像等資源的一端成為用戶端,而提供資源響應的一端成為伺服器。
請求封包的構成:
方法 URI 協定版本 (請求首部字段)
請求實體
響應形式:
協定版本、狀态碼(表示請求成功或失敗的數字代碼)、用以解釋狀态碼的原因短語、
可選的響應首部字段以及實體主體構成。
HTTP是一種不儲存狀态,即無狀态協定。HTTP協定自身不對請求和響應之間的通信狀态進行儲存。
HTTP/1.1雖然是無狀态協定,但是為了實作期望的保持狀态功能,引入了cookie技術。有了cookie技術
就可以暫時管理狀态了。
URI為完整的請求URI,在首部字段Host中寫明網絡域名或IP位址。
GET:擷取資源 GET方法用來請求通路已被URI識别的資源。指定的資源經伺服器端解析後傳回響應内容,
也就是說,如果請求的資源是文本,那就是保持原樣傳回,如果是像CGI那樣的程式,則傳回經過執行後的輸出結果。
POST:用來傳輸實體的主體
POST的主要目的并不是擷取響應的主體内容
PUT:傳輸檔案,要求在請求封包的主體中包含檔案内容,然後儲存到請求URL指定的位置。
HEAD:和GET差不多,隻是不傳回封包主體部分。用于确認URI的有效性及資源更新的日期時間
DELETE:delete按照指定URI删除指定的資源
OPTIONS:詢問支援的方法
OPTIONS方法用來查詢針對請求URI指定的資源支援方法
TRACE:是讓WEB伺服器端将之前的請求通信環給用戶端的方法。
CONNECT:CONNECT方法要求在與代理通信時建立隧道,實作隧道協定進行tcp通信
使用方法下達指令:
向請求URI指定的資源發送請求封包時,稱為方法的指令。
為了解決TCP的連接配接問題,加入了持久連接配接,持久連接配接的特點是:隻要任意一端設有明确提出斷開連接配接,則保持TCP連接配接狀态
管線化:
持久連接配接使得多數請求以管線化方式發送成為可能。
從前發送請求後需要等待并受到響應,才能發送下一個請求,管線化技術出現後,不用等待響應就可以
發送下一個請求。
HTTP是無狀态協定,它不對之前發生過的請求和響應的狀态進行管理,也就是說,無法根據之前的狀态進行本次的請求處理。
Cookie技術通過在請求和響應封包中寫入Cookie資訊來控制用戶端的狀态。