前端——理解一次完整HTTP請求的步驟


(一)一次完整HTTP請求過程

在瀏覽器輸入地址,瀏覽器與訪問服務器之間會完成一次http請求,步驟如下:

  1.DNS域名解析為服務器主機的IP地址;

  2.根據IP,找到對應的服務器,發起TCP三次握手;

  3.建立TCP連接后發起HTTP請求;

  4.服務器得到HTTP請求,瀏覽器得到HTML代碼;

  5.瀏覽器解析HTML代碼,並請求HTML代碼中的資源(如js,圖片,css,先得到代碼才能去找這些資源);

  6.瀏覽器對頁面進行渲染並展示給用戶;

在上述過程,需注意:

  1.DNS域名解析采用的是遞歸查詢的方式,過程是,先去找DNS緩存>緩存找不到就去找根域名服務器>根域名又會去找下一級>遞歸查找之后,找到了,給web瀏覽器。

  2.為什么HTTP協議要基於TCP來實現?  TCP是一個端到端的可靠的面向連接的協議,HTTP基於傳輸層TCP協議不用擔心數據傳輸的各種問題(當發生錯誤時,會重傳)。

  3.最后一步瀏覽器是如何對頁面進行渲染的?  

    a)解析html文件構成 DOM樹;

    b)解析CSS文件構成渲染樹;

    c)邊解析,邊渲染 ;

    d)JS 單線程運行,JS有可能修改DOM結構,意味着JS執行完成前,后續所有資源的下載是沒有必要的,所以JS是單線程,會阻塞后續資源下載;

(二)前端之HTTP協議

  參考:https://www.cnblogs.com/taostaryu/p/9076789.html

 


免責聲明!

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



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