瀏覽器工做原理與實踐學習筆記(三)-- 從輸入url到頁面展現,都發生了什麼呢

筆記說明前端

瀏覽器工做原理與實踐是李兵【前盛大創新院高級研究員】在極客時間開的一個專欄,透過瀏覽器看懂前端本質, 筆者主要整理學習過程的一些要點筆記以及感悟,完整的能夠加入李兵老師的專欄學習。 面試

一道常常會被問到的面試題,今天就來總結一下,從輸入url到頁面展現出內容,這中間具體 具體 具體 都發生了什麼事呢?瀏覽器

從輸入 URL 到展現出完整的頁面,涉及到三個進程,以下安全

1. 瀏覽器進程
2. 網絡進程
3. 渲染進程
複製代碼

從以上三個進程宏觀的看bash

  1. 瀏覽器進程 -- 用戶輸入, 瀏覽器開始處理用戶的輸入
  2. 網絡進程 -- url 請求
  3. 渲染進程 -- 渲染頁面

一: 用戶輸入網絡

用戶輸入的能夠是關鍵字,也能夠是url學習

當用戶輸入關鍵字 或 URL 回車以後,瀏覽器標標籤頁上的標籤會進入一個加載的狀態,可是這個時候頁面內容沒有替換爲新的內容,依舊是以前打開的頁面。 url

由於第一步瀏覽器進程內,是沒有進行到 「提交文檔階段」(提交文檔階段是在網絡進程發起 URL 請求,瀏覽器讀取響應頭信息,準備渲染進程後發生。),提交文檔階段後,頁面開始渲染,這時候頁面內容纔會被替換成新的。spa

二: URL 請求code

瀏覽器進程是經過進程間通訊(IPC)把 URL 發送到網絡進程

三: 準備渲染進程

  1. 在網絡進程讀取響應頭信息以後,瀏覽器進程就會準備渲染進程。
  2. 瀏覽器進程發出 「提交文檔」 的信息給渲染進程,渲染進程收到信息後,會和網絡進程創建管道,進行文檔數據傳輸。
  3. 傳輸完畢後,通知瀏覽器進程。
  4. 瀏覽器收到 「確認」 信息, 更新頁面狀態 (瀏覽器前進後退狀態、url、安全狀態、頁面狀態)。

四: 開始渲染,渲染後頁面替換爲新頁面

...持續補充渲染知識

相關文章
相關標籤/搜索