'web前端HTTP協議'

"

協議是指計算機通信網絡中兩臺計算機之間進行通信所必須共同遵守的規定或規則,超文本傳輸協議(HTTP)是一種通信協議,它允許將超文本標記語言(HTML)

文檔從web服務器傳送到客戶端的瀏覽器。

HTTP協議,即超文本傳輸協議(Hypertext transfer protocol)。是一種詳細規定了瀏覽器和萬維網(WWW=World Wide Web)服務器之間互相通信的規則,

通過因特網傳送萬維網文檔的數據傳送協議。

HTTP協議是用於從WWW服務器傳輸超文本到本地瀏覽器的傳送協議。它可以使瀏覽器更加高效,使網絡傳輸減少。它不僅保證計算機正確快速地傳輸超文本文檔,

還確定傳輸文檔中的哪一部分,以及哪部分內容首先顯示等。

HTTP是一個應用層協議,由請求和響應構成,是一個標準的客戶端服務器模型。HTTP是一個無狀態的協議。

在Internet中所有的傳輸都是通過TCP/IP進行的。HTTP協議作為TCP/IP模型中應用層的協議也不例外。HTTP協議通常承載於TCP協議之上,有時也承載於TLS或SSL協議層之上,這個時候,就成了我們常說的HTTPS。

HTTP默認端口號為80,HTTPS端口為443.

瀏覽網頁是HTTP的主要應用,但是這並不代表HTTP就只能應用於網頁的瀏覽。HTTP是一種協議,只要通信的雙方都遵守這個協議,HTTP就能有用武之地。比如:QQ、迅雷等,都會使用HTTP協議。

HTTP協議永遠都是客戶端發起請求,服務器回送響應。這樣就限制了使用HTTP協議,無法實現在客服端沒有發起請求的時候,服務器將消息推送給客服端。

HTTP特點

1、支持客戶/服務器模式。支持基本認證和安全認證。

2、簡單快速:客戶向服務器請求服務時,只需傳送請求方法和路徑。請求方法常用的有GET、HEAD、POST。每種方法規定了客戶與服務器聯繫的類型不同。由於HTTP協議簡單,

使得HTTP服務器的程序規模小,因而通信速度很快。

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

4、HTTP0.9和1.0使用非持續連接:限制每次連接只處理一個請求,服務器處理完客戶的請求,並收到客戶的應答後,即斷開連接。HTTP1.1使用持續連接,不必每個web對象創建一個新的連接,

一個連接可以傳送多個對象,採用這種方式可以節省傳輸時間。

5、無狀態:HTTP協議是無狀態協議。無狀態是指協議對於事務處理沒有記憶能力。缺少狀態意味著如果後續處理需要前面的信息,則它必須重傳,這樣可能導致每次連接傳送的數據量增大。

一次HTTP操作稱為一個事務,其工作過程可分為四步:

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

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

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

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

如果在以上過程中的某一步出現錯誤,那麼產生錯誤的信息將返回到客戶端,有顯示屏輸出。對於用戶來說,這些過程是由HTTP自己完成的,用戶只要用鼠標點擊,等待信息就可以了。

HTTP是基於傳輸層的TCP協議,而TCP是一個端到端的面向連接的協議。所謂的端到端可以理解為進程之間的通信。所以HTTP在開始傳輸之前,首先需要建立TCP連接,而TCP連接的過程

需要所謂的“三次握手”(客戶端向服務器請求,服務器向客戶端確認、請求,客戶端向服務器確認)。在TCP“三次握手”之後,建立了TCP連接,此時HTTP就可以進行傳輸了。

"

相關推薦

推薦中...