300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 浏览器地址栏输入url以后发生了什么

浏览器地址栏输入url以后发生了什么

时间:2022-09-13 12:59:51

相关推荐

浏览器地址栏输入url以后发生了什么

在浏览器输入url后会发生的过程:

1.DNS对域名进行解析;

2.建立TCP连接(三次握手);

3.发送HTTP请求;

4.服务器处理请求;

5.返回响应结果;

6.关闭TCP连接(四次挥手);

7.浏览器解析HTML;

8.浏览器布局渲染;

1.浏览器对输入的地址补全,然后DNS域名解析

 如果你搜索的是的时候,实际访问的还是,浏览器会将你没输入全的地址进行补充。

2、找到服务器地址,建立TCP连接(三次握手)

这里举个简单例子来了解什么是三次握手;

我(用户)去银行取钱,对银行的工作人员(服务器)说我要取一个亿(发送一个SYN),工作人员会说确定吗(这里接收到了请求,并且返回一个ACK+SYN),之后我(用户)就会说确定(接收到了返回的信息并且会返回一个ACK),然后就开始服务。这就是三次握手。

为何是三次握手不是两次四次?

在工作人员对你说"你确定吗?"的时候你没有回复,它们是不会继续进行操作的,这样你就会继续问,“我要取钱”,就又会来一个工作人员,这样一直持续下去,钱没取出来人站了一排,服务器就会宕机。所以一定要三次握手。

3.发送HTTP请求

浏览器会将请求包装成请求报文,如 GET / HTTP/1.0 (请求的方法 请求的URL 请求所使用的协议)

头部信息:User-Agent Host等成对出现的值

主体:请求头部和主体之间有一个回车换行。如果是get请求,则没有主体部分,post请求有主体部分。

4、服务器处理请求

服务器接收到请求后,就会返回数据,比如一个html页面。

5、返回响应结果

如果服务器返回的content-type是accept中的任何一个,浏览器都能解析,并直接展示在网页上。

浏览器能直接处理很多种格式,并直接呈现在网页中,并不限于accept中规定的字段。

6.关闭TCP连接(四次挥手)

还是上面的例子:

客户说我处理完我要做的事情了(发送一个FIN),工作人员说收到(发送ACK),我也处理完我要做的事情了,然后客户会说我没有想办理的业务了,再见吧;工作人员说好的。至此进入TIME_WAIT状态(保留现场业务信息),等到2MSL后,才把这个柜台信息清理了(连接最终关闭,并且把业务信息都清理了)。

7.浏览器解析HTML

浏览器通过解析HTML,生成DOM树,解析CSS,生成CSS规则树,然后通过DOM树和CSS规则树生成渲染树。渲染树与DOM树不同,渲染树中并没有head、display为none等不必显示的节点。

8.浏览器布局渲染

html解析->外部样式、脚本加载->外部样式执行->外部脚本执行->html继续解析->dom树构建完成->加载图片->页面加载完成

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。