经典面试题:从URL到页面

问题:从用户输入URL按下回车,一直到用户看到界面,期间发生了什么?

1.DNS解析(缓存)

(1)找到浏览器DNS缓存解析域名
(2)找到本机DNS缓存
(3)找路由器DNS缓存
(4)找运营商DNS缓存(在这一步,80%的DNS都能查到)
(5)递归查询(最不愿意看到的事情,查询的是全球13台DNS根服务器中的一个)

2.进行TCP(协议连接),三次握手(根据上一步请求回来的IP地址,去联系Server)

第一次握手🤝:浏览器发送给服务器。(我想和说话,你能听到吗)
第二次握手🤝:服务器发送给浏览器,(我能听见,你说吧)
第三次握手🤝:浏览器发给服务器(好,那我就开始说了)

3.发送请求(请求报文)

4.得到响应(响应报文)

5.浏览器开始解析HTML

-- 预解析:将所有外部的资源,发请求出去
-- 解析html,生成dom树
-- 解析css,生成cssom树,
-- 合并生成一个render树
-- js是否操作DOM样式
	-- 有,进行重绘重排,(这样不好,应该尽量避免,2.最小化重绘重排)
	-- 没有,null
-- 最终展示界面

6.断开tcp连接,四次挥手🙋🙋‍♂️(确保数据的完整性)

 第一次挥手🙋:由浏览器发送给服务器。(我的东西接受完了,你关闭吧)
 第二次挥手🙋‍♂️:服务器发送给浏览器。(我还有些东西没接受完,你等一会,我接受好了告诉你)
 第三次挥手🙋‍♂️:服务器发送给浏览器。(我接受完了,你断开吧)
 第四次挥手🙋:浏览器发送给服务器。(好的,那我断开了)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值