更新時間:2021-02-26 來源:黑馬程序員 瀏覽量:
HTTP通信機制是在一次完整的HTTP通信過程中,Web瀏覽器與Web服務器之間將完成下列7個過程:
1. 建立 TCP 連接
在HTTP工作開始之前,Web瀏覽器首先通過網(wǎng)絡與Web服務器建立連接,該連接是通過TCP協(xié)議來完成的,該協(xié)議與 IP 協(xié)議共同構建 Internet,即著名的 TCP/IP 協(xié)議族,因此 Internet 又被稱作是TCP/IP 網(wǎng)絡。HTTP 是比 TCP 更高層次的應用層協(xié)議,根據(jù)規(guī)則,只有低層協(xié)議建立之后才能進行更高層協(xié)議的連接,因此,首先要建立 TCP 連接,一般 TCP 連接的端口號是 80。
2. Web 瀏覽器向 Web 服務器發(fā)送請求命令
一旦建立了 TCP 連接,Web 瀏覽器就會向 Web 服務器發(fā)送請求命令,例如GET/sample/hello.jspHTTP/1.1。
3. Web 瀏覽器發(fā)送請求頭信息
瀏覽器發(fā)送其請求命令之后,還要以頭信息的形式向 Web 服務器發(fā)送一些別的信息,之后瀏覽器發(fā)送了一空白行來通知服務器,它已經(jīng)結(jié)束了該頭信息的發(fā)送。

4. Web 服務器應答
客戶機向服務器發(fā)出請求后,服務器會向客戶機回送應答, 如,HTTP/1.1 200 OK ,應答的第一部分是協(xié)議的版本號和應答狀態(tài)碼。
5. Web 服務器發(fā)送應答頭信息
正如客戶端會隨同請求發(fā)送關于自身的信息一樣,服務器也會隨同應答向用戶發(fā)送關于它自己的數(shù)據(jù)及被請求的文檔。
6. Web 服務器向瀏覽器發(fā)送數(shù)據(jù)
Web 服務器向瀏覽器發(fā)送頭信息后,它會發(fā)送一個空白行來表示頭信息的發(fā)送到此為結(jié)束,接著,它就以 Content-Type 應答頭信息所描述的格式發(fā)送用戶所請求的實際數(shù)據(jù)。
7. Web 服務器關閉 TCP 連接
一般情況下,一旦 Web 服務器向瀏覽器發(fā)送了請求數(shù)據(jù),它就要關閉 TCP 連接,如果瀏覽器或者服務器在其頭信息加入了Connection:keep-alive,TCP 連接在發(fā)送后將仍然保持打開狀態(tài),瀏覽器可以繼續(xù)通過相同的連接發(fā)送請求。保持連接節(jié)省了為每個請求建立新連接所需的時間,還節(jié)約了網(wǎng)絡帶寬。
猜你喜歡:
1024首播|39歲程序員逆襲記:不被年齡定義,AI浪潮里再迎春天
2025-10-241024程序員節(jié)丨10年同行,致敬用代碼改變世界的你
2025-10-24【AI設計】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設計連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運營】深圳跨境電商運營畢業(yè)22個工作日,就業(yè)率91%+,最高薪資達13500元
2025-09-19【AI運維】鄭州運維1期就業(yè)班,畢業(yè)14個工作日,班級93%同學已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開發(fā)】上海校區(qū)AI鴻蒙開發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19