1. 程式人生 > >HTTP協議的簡單解析

HTTP協議的簡單解析

缺少 網工 cep acc ade 服務器 需要 web 特點

  超文本傳輸協議(HTTP,HyperText Transfer Protocol)是用於從服務器傳輸超文本到本地瀏覽器的傳輸協議,是應用最為廣泛的網絡協議。B/S網絡架構的核心是HTTP,掌握HTTP對一個從事互聯網工作的程序員來說非常重要。要理解HTTP,還需要了解HTTP中的HTTP Header,HTTP Header控制著成千上萬的用戶的數據傳輸以及用戶瀏覽器的渲染行為和服務器的執行邏輯。

常見的HTTP請求頭:

  Accept-Charset:指定客戶端可以接受的字符集編碼

  Accept-Encoding:指定瀏覽器可以支持的Web服務器返回內容壓縮編碼類型

  Accept-Language:指定瀏覽器可以接受的語言

  Host:表示請求的服務器的域名和端口號

  User-Agent:客戶端將它的操作系統、瀏覽器和其他屬性告訴服務器

  Connection:表示是否需要持久連接

常見的HTTP響應頭:

  Server:表示Web服務器軟件名稱

  Content-Type:表示返回內容的MIME類型

  Content-Encoding:表示Web服務器只是的返回內容壓縮編碼類型

  Content-Language:表示響應體的語言

  Content-Length:表示響應體的內容長度,這個長度是經過了壓縮後的長度

  Keep-Alive:表示保持連接的時間

常見的HTTP狀態碼:

  200:表示客戶端請求成功

  302:表示臨時跳轉

  400:表示客戶端請求有語法錯誤,不能被服務器識別

  403:表示服務器收到請求,但是拒絕提供服務

  404:表示服務器找不到請求的資源

  500:表示服務器發生了不可預期的錯誤

HTTP工作流程:

  1、首先客戶端與服務器需要建立連接,只需要單擊某個超級鏈接,HTTP的工作開始。

  2、建立連接後,客戶端發送一個請求給服務器(默認請求服務器的80端口),請求方式的格式為:統一資源標識符(URL)+協議版本號+MIME信息包括請求修飾符、客戶端信息和可能的內容。

  3、服務器接收到請求後,給予響應的相應信息,其格式為一個狀態行,包括信息的協議版本號、一個成功或錯誤的代碼,後面是MIME信息包括服務器信息、實體信息和可能的內容。

  4、客戶端接收服務器所返回的信息通過瀏覽器顯示在用戶的顯示屏上,然後克爾護短和服務器斷開連接。

HTTP協議的主要特點:

  1、支持客戶端/服務器模式

  2、簡單快速,客戶端向服務器發送請求服務時,只需要傳送請求方法和路徑。由於HTTP協議簡單,使得HTTP服務器的程序規模小,因而通信速度快

  3、靈活,HTTP允許傳輸任意類型的數據對象,正在傳輸的類型由Content-Type加以標記

  4、無連接,無連接的含義是限制每次連接只處理一個請求,服務器處理完成客戶端的請求,並收到客戶的應答後,即斷開連接。采用這種方式可以節省傳輸時間

  5、無狀態,HTTP協議是無狀態協議,無狀態是指協議對於事物處理沒有記憶能力,缺少狀態意味著如果後續處理需要前面的信息,則它必須重傳,這樣可能導致每次連接傳輸的數據量增大。另一方面,在服務器不需要先前信息時它的應答就較快

HTTP協議的簡單解析