關於瀏覽器的一些知識
阿新 • • 發佈:2018-08-08
ESS afa 服務 並且 接收 瀏覽器 javascrip 網址 ios
瀏覽器有很多的功能,可以分為以下幾個部分:
-
1. 人機交互部分(UI)
2. 網絡請求部分(Socket)
3. JavaScript 引擎部分(解析執行JavaScript)
4. 渲染引擎部分(渲染HTML、css等)
5. 數存儲部分(cookie、HTML5中的本地存儲LocalStorage、SessionStorage)
在渲染引擎(又叫排版引擎或瀏覽器內核)部分
主流的瀏覽器引擎有:
1. Chrome 瀏覽器 :Blink引擎(WebKit的一個分支)
2. Safari 瀏覽器:WebKit引擎
3. FireFox 瀏覽器 :Gecko引擎
瀏覽器工作原理:
1. 解析HTML構建DOM樹
2. 構建渲染樹
3. 對渲染樹進行布局
4. 繪制渲染樹,調用操作系統底層API進行繪圖操作
下面來兩幅圖來幫助理解一下:
瀏覽器訪問網站的過程
- 在瀏覽器地址欄中輸入網址
- 瀏覽器通過用戶在地址欄中輸入的URL構建HTTP請求報文
- 瀏覽器發起DNS解析請求,將域名轉化為IP地址
- 瀏覽器將請求報文發送給服務器
- 服務器接收報文並解析
- 服務器處理用戶請求,並將處理結果封裝成HTTP響應報文
- 服務器將HTTP響應報文發送給瀏覽器
- 瀏覽器接收服務器相應的HTTP報文,並解析
- 瀏覽器解析HTML頁面並展示,在解析HTML頁面時遇到新的資源需要再次發起請求
- 最終瀏覽器展示出了頁面
WEB開發的本質
1. 請求:客戶端發起請求
2. 處理:服務器處理請求
3. 相應:服務器將處理結果發送給客戶端
4. 客戶端處理響應:在服務器響應完畢後,客戶端繼續處理:
- 瀏覽器:解析服務器返回的數據
- IOS、Android客戶端,解析服務器返回的數據,並且通過IOS或Android的UI技術實現界面的展示功能
C/S: 客戶端服務器(如:QQ客戶端)
B/S: 瀏覽器服務器
B/S 模式開發:易於維護,但用戶體驗不佳
C/S 模式開發:不易於維護,但是與服務器連接穩定,用戶體驗好
關於瀏覽器的一些知識