面试官:从输入url到页面显示发生了什么?

前言

之前查过这类题目,网上说的都比较深入,遇到真正面试除非考官继续问,没必要讲那么细致,简单回答如下即可。

url解析

解析出协议http或https+服务器地址+访问路径名,比如https://www.baidu.com/s就是https://+www.baidu.com+/s,根据这些信息生成http请求数据包。

DNS域名解析

对服务器地址进行DNS解析,从后至前,查询域名对应的真实ip地址。比如www.baidu.com:

  1. 根DNS服务器会告诉你.com是.com顶级域DNS服务器管理的->
  2. (.com)顶级域DNS会告诉你baidu.com是由baidu.com权威DNS服务器管理的->
  3. (baidu.com)权威DNS服务器会告诉你它对应的服务端ip是啥。

tcp三次握手

获取服务端ip,tcp三次握手,详见:TCP连接三次握手与四次挥手

发送请求

连接后,客户端发送http请求报文,中间可能经过一些负载均衡与反向代理处理,最终发送到服务端(tomcat、nodejs等等),服务端处理完请求并返回响应报文。

浏览器解析渲染页面

  1. 解析dom树,遇到script会被阻塞,这也就是为什么非依赖js最好放在html末尾的原因。
  2. 解析css规则树。
  3. 根据dom树和css规则树生成渲染树(render树)。
  4. 根据渲染树计算节点信息布局,并绘制(后期还有重绘和回流的问题)。
  5. 解析js。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

在下月亮有何贵干

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

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

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

打赏作者

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

抵扣说明:

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

余额充值