浏览器资源加载机制,全面解析!

4 min read

浏览器加载资源的一般流程是这样的:

  1. 解析URL:用户输入或者程序生成一个URL。
  2. 查找缓存:浏览器首先会查找本地缓存中是否有该资源的副本,以便快速的响应用户的请求。
  3. DNS查询:如果在缓存中没有找到该资源,浏览器会向本地DNS服务器发送一个DNS查询请求,以获取资源的真实IP地址。
  4. 建立TCP连接:浏览器使用HTTP协议的TCP连接方式与web服务器建立连接,并发送http报文。
  5. 发送http请求:浏览器发送http请求,并等待响应。
  6. 接收响应:web服务器会根据HTTP请求返回数据,包括响应状态码,响应头信息以及响应体数据。
  7. HTML解析:浏览器接收到HTML响应后,会从上至下解析HTML文件,生成DOM tree。
  8. CSS解析:浏览器对于HTML文件中的样式信息进行解析,生成CSSOM tree。
  9. 构建渲染树:根据DOM Tree和CSSOM Tree,浏览器构建渲染树,渲染树是浏览器完成网页可视化的关键步骤,也是最慢的步骤。
  10. 布局绘制:浏览器对渲染树进行布局并绘制页面。
  11. 完成加载:浏览器将渲染完成的页面展示给用户。

以上是浏览器加载资源的一般流程,不同的浏览器及其版本在细节方面可能会有所不同。