http請求生命周期流程


https://mp.weixin.qq.com/s/fpA2CThk2L-YBw6z0k4rtw

HTTP 請求/相應

1、客戶端連接到Web服務器

一個HTTP客戶端,通常是瀏覽器,與Web服務器的HTTP端口(默認為80)建立一個TCP套接字連接。

2、發送HTTP請求

通過TCP套接字,客戶端向Web服務器發送一個文本的請求報文,一個請求報文由請求行、請求頭部、空行和請求數據4部分組成。

3、服務器接受請求並返回HTTP響應

Web服務器解析請求,定位請求資源。服務器將資源復本寫到TCP套接字,由客戶端讀取。一個響應由狀態行、響應頭部、空行和響應數據4部分組成。

4、釋放連接TCP連接

若connection 模式為close,則服務器主動關閉TCP連接,客戶端被動關閉連接,釋放TCP連接;若connection 模式為keepalive,則該連接會保持一段時間,在該時間內可以繼續接收請求。

5、客戶端瀏覽器解析HTML內容

客戶端瀏覽器首先解析狀態行,查看表明請求是否成功的狀態代碼。然后解析每一個響應頭,響應頭告知以下為若干字節的HTML文檔和文檔的字符集。客戶端瀏覽器讀取響應數據HTML,根據HTML的語法對其進行格式化,並在瀏覽器窗口中顯示。

 

在瀏覽器地址欄鍵入URL,按下回車之后會經歷以下流程

1、瀏覽器向 DNS 服務器請求解析該 URL 中的域名所對應的 IP 地址;

2、解析出 IP 地址后,根據該 IP 地址和默認端口 80,和服務器建立TCP連接;

3、瀏覽器發出讀取文件(URL 中域名后面部分對應的文件)的HTTP 請求,該請求報文作為 TCP 三次握手的第三個報文的數據發送給服務器;

4、服務器對瀏覽器請求作出響應,並把對應的 html 文本發送給瀏覽器;

5、釋放 TCP連接;

6、瀏覽器將該 html 文本並顯示內容;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM