输入 URL 到浏览器显示页面 流程如下
1、首先进行 url 地址解析 确认 URL 格式是否合法
2、接下来把合法的 url 域名地址发送至 DNS 服务器 获取域名对应的 服务器 IP 地址
2、进入 HTTP缓存 机制 检查浏览器是否有缓存,这里的缓存分为 强缓存 和 协商缓存
1、首现会 通过 请求体的 cache-contol 字段来检查是否命中 强缓存,如果命中,则直接读取缓存数据
2、如果没有命中 强缓存 会进入 协商缓存 的检查 如果判断命中了 协商缓存 则直接读取缓存数据
3、没有缓存的话 接下来 会与 服务器 通过 三次握手 建立 TCP 连接
4、通过 TCP 连接并获取的 响应数据后 会 通过 四次挥手 确认关闭和服务器的连接 然后进入到 浏览器的渲染流程
5、浏览器的渲染流程大致分为 5 步
第一步,构建 DOM 树:用 HTML 分析器,分析 HTML 元素,构建一棵 DOM 树;
第二步,生成样式表:用 CSS 分析器,分析 CSS 文件和元素上的 inline 样式,生成页面的样式表;
第三步,构建 Render 树:将 DOM 树和样式表关联起来,构建一棵 Render 树(Attachment)。
第四步,确定节点坐标:根据 Render 树结构,为每个 Render 树上的节点确定一个在显示屏上出现的精确坐标;
第五步,绘制页面:根据 Render 树和 节点显示 坐标,然后调用每个节点的 paint 方法,将它们绘制出来
标签:缓存,浏览器,Render,url,流程,样式表,第六篇
From: https://www.cnblogs.com/caix-1987/p/17265556.html