美文网首页
一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什

一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什

作者: _ClariS_ | 来源:发表于2019-10-12 17:50 被阅读0次

    一、读取缓存

    浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直接在屏幕中显示页面内容。若没有缓存,则直接进行下一步

    二、DNS 解析

    进行域名解析,获取对应的IP地址

    三、TCP 连接

    浏览器知道了服务器的 IP 地址,就要与服务器建立连接。
    通信连接的建立需要TCP的三次握手:
    (1)主机向服务器发送一个建立连接的请求(您好,我想认识您);
    (2)服务器接到请求后发送同意连接的信号(好的,很高兴认识您);
    (3)主机接到同意连接的信号后,再次向服务器发送了确认信号(我也很高兴认识您),自此,主机与服务器两者建立了连接。

    四、发送 HTTP 请求

    发送HTTP请求的过程就是构建HTTP请求报文并通过TCP协议中发送到服务器指定端口(HTTP协议80/8080, HTTPS协议443)。
    HTTP请求报文是由三部分组成: 请求行, 请求报头和请求正文。

    五、服务器处理请求并返回HTTP报文

    HTTP响应报文也是由三部分组成: 状态码, 响应报头和响应报文。

    六、浏览器解析渲染页面

    浏览器是一个边解析边渲染的过程。首先浏览器解析HTML文件构建DOM树,然后解析CSS文件构建渲染树,等到渲染树构建完成后,浏览器开始布局渲染树并将其绘制到屏幕上。

    七、连接结束

    通过四次挥手关闭连接。
    (1)主机向服务器发送一个断开连接的请求(不早了,我该走了);
    (2)服务器接到请求后发送确认收到请求的信号(知道了);
    (3)服务器向主机发送断开通知(我也该走了);
    (4)主机接到断开通知后断开连接并反馈一个确认信号(嗯,好的),服务器收到确认信号后断开连接;

    PS:本文非原创,内容均摘抄自他人文章,只是为了方便学习啦,见谅。

    相关文章

      网友评论

          本文标题:一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什

          本文链接:https://www.haomeiwen.com/subject/ltccmctx.html