HTTP是一個屬於應用層的面向對象的協議,因爲其簡捷、快速的方式,適用於分佈式超媒體信息系統。html
1) 創建鏈接:客戶端與服務器創建TCP鏈接web
2) 發送請求:打開一個鏈接後,客戶端把請求信息發送到服務器的相應端口上,完成請求動做提交。瀏覽器
3) 發送響應:服務器在處理完客戶端請求以後,要向客戶端發送響應消息。服務器
4) 關閉鏈接:客戶端和服務器端均可以關閉套接字來結束TCP/IP對話。分佈式
請求信息與相應信息的例圖:
性能
具體的請求頭字段的含義:測試
請求方法(全部方法全爲大寫)有多種,各個方法的解釋以下:
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)spa
POST方法要求被請求服務器接受附在請求後面的數據,經常使用於提交表單。3d
在接收和解釋請求消息後,服務器返回一個HTTP響應消息。orm
HTTP響應也是由三個部分組成,分別是:狀態行、消息報頭、響應正文
響應信息:
響應頭字段的含義:
響應的狀態碼:
請求響應流程: