面试题 浏览器访问URL的背后真相

在浏览器地址栏输入一个URL后回车,背后会进行哪些技术步骤?

💖 入门版

  • 建立客户端与服务器的连接
  • 建立连接后,客户端发送一个请求给服务器
  • 服务器接受请求给予响应信息
  • 客户端将返回的内容解析并呈现
  • 断开连接

💖 青春版

  • 域名解析
  • 发起 TCP 的三次握手
  • 建立 TCP 连接后发起 HTTP 请求
  • 服务器响应 HTTP 请求,浏览器得到 HTML 代码
  • 浏览器解析 HTML 代码,并请求 HTML 代码中的资源(如 JS、CSS、图片等)
  • 浏览器对页面进行渲染呈现给用户

💖 详细版

👩‍🏫 参考知乎大佬回答

1. 在浏览器中输入指定网页的 URL

URL:(Uniform Resource Locators),即统一资源定位器。网络上的所有资源都靠 URL 来定位,每一个文件就对应着一个 URL,就像是路径地址。理论上,文件资源和 URL 一一对应。实际上也有例外,比如某些 URL 指向的文件已经被重定位到另一个位置,这样就有多个 URL 指向同一个文件。

  • 检查缓存
    在这里插入图片描述

2. 浏览器通过 DNS 协议,获取域名对应的 IP 地址

DNS:键入了 URL 之后,第一个重头戏登场——DNS 服务器解析。DNS(Domain Name System)域名系统,要解决的是 域名和 IP 地址的映射问题 。毕竟,域名只是一个网址便于记住的名字,而网址真正存在的地址其实是 IP 地址。

3. 浏览器根据 IP 地址和端口号,向目标服务器发起一个 TCP 连接请求

4. 浏览器在 TCP 连接上,向服务器发送一个 HTTP 请求报文,请求获取网页的内容

在这里插入图片描述

5. 服务器收到 HTTP 请求报文后,处理请求,并返回 HTTP 响应报文给浏览器

在这里插入图片描述

6. 浏览器收到 HTTP 响应报文后,解析响应体中的 HTML 代码,渲染网页的结构和样式,同时根据 HTML 中的其他资源的 URL(如图片、CSS、JS 等),再次发起 HTTP 请求,获取这些资源的内容,直到网页完全加载显示

在这里插入图片描述

7. 浏览器在不需要和服务器通信时,可以主动关闭 TCP 连接,或者等待服务器的关闭请求

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值