输入URL到加载好页面经历什么?

  1. 输入url

  2. 查看浏览器缓存,命中缓存则进行解析html js css(从12点开始)

  3. 没有命中缓存,开始进行DNS解析(主机 -> 路由器 -> ISP服务)

  4. 拿到IP地址开始Tcp三次握手

  5. tcp握手成功,客户端发送http请求

  6. 服务端根据请求内容,进行缓存验证

  7. 缓存验证通过,返回304

  8. 缓存验证不通过,返回新资源和缓存信息

  9. 客户端接受到响应后,根据实际情况选择关闭Tcp连接或者重用

  10. 如果关闭Tcp连接,需要四次握手

  11. 客户端根据不同状态码进行不同操作,304则使用本机缓存

  12. 解析html js css,遇到html构建Dom tree,遇到css构建cssom,将Dom tree和cssom整合成 Render tree,遇到img和mp4等文件下载

  13. 渲染Render Tree,遇到script则暂停渲染,优先加载并执行js代码

  14. 直到把Render Tree渲染完成

results matching ""

    No results matching ""