HTTP協議:
HTTP是一個屬於應用層的面向對象的協議,由於其簡捷、快速的方式,適用於分布式超媒體信息系統。
基於HTTP協議的客戶端/服務器請求響應機制的信息交換過程包含下面幾個步驟:
1) 建立連接:客戶端與服務器建立TCP連接
2) 發送請求:打開一個連接后,客戶端把請求信息發送到服務器的相應端口上,完成請求動作提交。
3) 發送響應:服務器在處理完客戶端請求之后,要向客戶端發送響應消息。
4) 關閉連接:客戶端和服務器端都可以關閉套接字來結束TCP/IP對話。
web請求過程:
HTTP協議的請求與響應:
請求信息與相應信息的例圖:
1、請求
具體的請求頭字段的含義:
請求方法(所有方法全為大寫)有多種,各個方法的解釋如下:
GET 請求獲取Request-URI所標識的資源
POST 在Request-URI所標識的資源后附加新的數據
HEAD 請求獲取由Request-URI所標識的資源的響應消息報頭
PUT 請求服務器存儲一個資源,並用Request-URI作為其標識
DELETE 請求服務器刪除Request-URI所標識的資源
TRACE 請求服務器回送收到的請求信息,主要用於測試或診斷
CONNECT 保留將來使用
OPTIONS 請求查詢服務器的性能,或者查詢與資源相關的選項和需求
應用舉例:
GET方法:在瀏覽器的地址欄中輸入網址的方式訪問網頁時,瀏覽器采用GET方法向服務器獲取資源,eg:GET /form.html HTTP/1.1 (CRLF)
POST方法要求被請求服務器接受附在請求后面的數據,常用於提交表單。
2、響應
在接收和解釋請求消息后,服務器返回一個HTTP響應消息。
HTTP響應也是由三個部分組成,分別是:狀態行、消息報頭、響應正文
響應信息:
響應頭字段的含義:
響應的狀態碼:
請求響應流程: