http学习二 输入网址按下回车都发生了什么?

148 阅读1分钟
  • 浏览器从地址栏的输入中首先会去解析域名获得服务器的 IP 地址;浏览器首先会去寻找浏览器缓存--》系统缓存--》路由器缓存--》查找本机的hosts--》DNS服务器获取IP

  • 浏览器通过IP地址和端口号建立一个http请求

  • 浏览器用 TCP 的三次握手与服务器建立连接;

  • 浏览器向服务器发送拼好的报文;

  • 服务器收到报文后处理请求,同样拼好报文再发给浏览器;

  • 浏览器解析html,根据html构建DOM树,在 DOM树的构建过程中如果遇到 JS 脚本和外部 JS 连接,则会停止构建 DOM 树来执行和下载相应的代码,之后根据外部样式,内部样式,内联样式构建一个 CSS 对象模型树 CSSOM 树,构建完成后和 DOM 树合并为渲染树,之后进行布局,布局主要是确定各个元素的位置和尺寸然后渲染页面.

  • html 文件中会含有图片,视频,音频等资源,在解析 DOM 的过

    程中,遇到这些都会进行并行下载,浏览器对每个域的并行下载数量有一定的限制,一

    般是 4-6 个,当然这些所有的请求我们会先去读浏览器缓存,缓存一般通过Cache-Control、Last-Modify、Expires 等首部字段控制。