从输入网址到浏览器显示经历了那些过程

1.DNS 解析:
。当您输入一个URL(如 https://www.example.com )时,首先需要将域名转换成服务器的IP地址。这是通过DNS(Domain Name System,域名系统)查询完成的。浏览器会联系DNS服务器以获取与域名对应的IP地址。

2.建立TCP连接:
一旦获取到了服务器的IP地址,浏览器就会尝试与该IP地址建立TCP连接。这通常涉及三次握手过程,确保双方能够可靠地交换数据。

3.发送HTTP请求:
。TCP连接建立后,浏览器会通过这个连接向Web服务器发送一个HTTP请求。请求中包含了请求的方法(如GET)、请求的资源路径、协议版本以及一些请求头信息(如接受的内容类型、语言偏好等)。

4.服务器处理请求并返回响应:
。Web服务器接收到请求后,会进行相应的处理(如查询数据库、执行脚本等),然后生成一个HTTP响应,包含状态码、响应头以及响应体(通常是HTML文档)。

5.解析HTML内容:。浏览器接收到服务器的响应后,开始解析HTML文档,构建DOM树(Document Object
Model,文档对象模型)。这是一个表示文档结构的树形数据结构。

6.加载外部资源:在解析HTML的过程中,如果遇到外部资源(如CSS文件、JavaScript文件、图片等),浏览0器会发起额外的HTTP请求来加载这些资源。

7.渲染页面:
。当DOM树构建完成后,浏览器会结合CSS规则生成CSSOM(CSS Object Model),然后将DOM树和CSSOM合并生成渲染树(Render Tree)。渲染树包含了所有可见的节点及其样式信息。
。浏览器根据渲染树计算每个节点的几何布局(即确定每个元素的位置和大小),这一过程称为“布局"或“重排”。
。最后,浏览器将渲染树绘制到屏幕上,这个过程称为“绘制”。

8.执行JavaScript:
。如果页面中包含JavaScript代码,浏览器会在适当的时候(通常是在文档解析过程中或解析完成后)执行这些脚本。JavaScript可以修改DOM、CSSOM,甚至发起新的网络请求,因此可能会触发页面的重新渲染。

9.用户交互:
。页面加载完成后,用户可以与页面进行交互(如点击链接、填写表单等)。这些操作可能会触发JavaScript事件处理器,进一步改变页面的状态或触发新的网络请求

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海风*

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值