URL 地址到最终页面渲染完成
(1) DNS 解析:将域名地址解析成 IP 地址
读取浏览器 DNS 缓存
读取系统 DNS 缓存
读取路由器 DNS 缓存
读取网络运营商 DNS 缓存
递归搜索:blog.baidu.com
(2) TCP 连接:TCP 三次握手
第一次握手,由浏览器发起,告诉服务器我要发送请求了
第二次握手,由服务器发起,告诉浏览器我准备好了,你可以发送了
第三次握手,由浏览器发起,告诉服务器,我马上要发送了,准备接受吧
(3) 发送请求
请求报文:HTTP 协议的通信内容
(4) 接受响应
响应报文
(5) 渲染页面
遇见 HTML 标记,浏览器调用 HTML 解析器构成 dom 树
遇见 style/link,浏览器调用 css 解析器构成 cssom 树
遇见 script 标签,浏览器调用 script 解析器,处理 script 代码(绑定事件,修改 dom 树,cssom 树)
将 dom 树和 cssom 树合并成一个渲染树
根据渲染树来进行布局
将各个节点绘制到屏幕上(渲染)
(6) 断开连接:TCP 四次挥手
第一次挥手:浏览器发起,我东西发完了(请求报文),你准备关闭吧
第二次挥手:服务器发起,我东西接受完了(请求报文),我准备关闭了
第三次挥手:服务器发起,我东西发完了(响应报文),你准备关闭吧
第四次挥手:浏览器发起,我东西接受完了(响应报文),我准备关闭了
Last updated
Was this helpful?