URL(Uniform Resource Locator,统一资源定位符)是互联网上用来标识资源的地址。它可以指向网页、图片、音频、视频等各种类型的文件。当用户在浏览器中输入 URL 时,浏览器会根据 URL的 执行流程来获取相应的资源并呈现给用户。
URL 执行流程
URL 的执行流程如下:
1.解析协议
URL 以协议开头,如 http://、https://、ftp:// 等。浏览器会根据协议类型来决定采用何种方式获取资源。
2.解析域名
URL 中包含了一个域名或 IP 地址,浏览器需要解析这个域名或 IP 地址,将其转换为 IP 地址。这个过程通常包含了以下步骤:
- 浏览器首先会查询本地 DNS 缓存,看是否有缓存该域名对应的 IP 地址。
- 如果本地 DNS 缓存中没有该域名对应的 IP 地址,则浏览器会向本地 DNS 服务器发出请求,以获取域名对应的 IP 地址。
- 如果本地 DNS 服务器也没有该域名对应的 IP 地址,则会向根 DNS 服务器发送请求,以获取该域名的权威 DNS 服务器。
- 接着本地 DNS 服务器会向权威 DNS 服务器发出请求,获取该域名对应的 IP 地址,并将结果返回给浏览器。
3.解析端口号
URL中可以包含端口号,如果没有指定端口号,浏览器会默认使用协议的默认端口号。
4.解析路径
URL中包含了资源的路径,浏览器会向服务器请求这个路径对应的资源。
5.传递查询字符串
URL 中还可以包含查询字符串,它是用来传递参数的。浏览器会将查询字符串中的参数发送给服务器,以便服务器进行处理。
6.解析锚点
URL 中还可以包含锚点,用于定位页面的特定位置。浏览器会将锚点信息保存在浏览器历史记录中,以便用户在后续访问时能够直接跳转到指定位置。
7.请求资源
当浏览器解析完 URL 之后,就会向服务器发送请求,请求相应的资源。
8.接收资源
服务器接收到浏览器的请求之后,会返回相应的资源。浏览器会将资源下载到本地,然后解析和渲染页面,最终呈现给用户。