<progress id="nc499"><pre id="nc499"><rt id="nc499"></rt></pre></progress>

<dd id="nc499"><track id="nc499"><dl id="nc499"></dl></track></dd>
  • <nav id="nc499"></nav>

    <span id="nc499"></span>

    百度

    HTTP 請求的完全過程

    2021-03-30 11:34:49 閱讀:112
    1、瀏覽器根據域名解析 IP 地址

    DNS 查詢順序:瀏覽器緩存 → 系統緩存 → 路由器緩存 →ISP DNS 緩存 → 遞歸搜索。如果查找不到則繼續向下查找,如果查到則解析并結束。

    - 瀏覽器緩存: 每個域名會默認緩存 60s,容量 1000 條
    1. 查看: 通過地址:chrome://net-internals/#dns 查看瀏覽器內的 dns 緩存
    2. 清除: 點擊瀏覽器上清除按鈕直接清除
    - 系統緩存
    1. 查看: 在 cmd 控制臺,通過命令 ipconfig /displaydns 查看系統內的 dns 緩存
    2. 清除: 通過命令 ipconfig /flushdns 清空 dns 緩存
    - 路由器緩存
    - ISP(互聯網服務提供商) DNS 緩存

    2、瀏覽器與 WEB 服務器建立一個 TCP 連接

    過程: TCP 的 3 次握手,點擊查看

    3、瀏覽器給 WEB 服務器發送一個 HTTP 請求

    http 請求報文包含以下四部分

    - 請求行(request line): 分為三個部分, 它們之間用空格分割
    1. 請求方法: 8 種,點擊查看
    2. 請求地址: 由“名/值”對組成,每行一對, 名和值之間使用冒號分隔。
    3. HTTP 協議版本
    - 請求頭部(headers)
    - 空行(blank line)
    - 請求數據(request body)

    4、服務器端響應 HTTP 請求,瀏覽器得到 HTML 代碼

    HTTP 響應報文由四個部分組成

    - 狀態行(status line)
    - 相應頭部(headers)
    - 空行(blank line)
    - 響應數據(response body)

    5、瀏覽器解析 HTML 代碼,并請求 HTML 代碼中的資源

    過程: 瀏覽器拿到 HTML 文件后,開始解析 HTML 代碼,遇到靜態資源時,就向服務器端去請求下載,這個過程瀏覽器會對 HTML 代碼進行重排和重繪,點擊查看。

    6、關閉 TCP 連接,瀏覽器對頁面進行渲染呈現給用戶

    過程: TCP 的 4 次揮手 點擊查看。


    HTTP 請求的完全過程

    來源:網絡分享

    0