(一)学习笔记--页面加载过程

1.URL解析

URL结构:域名(查找服务器位置)就像一个大房子;端口号就如房间号;路径(定位资源位置)参数(传递请求资源的特点)哈希(前端页面锚点,用来标记页面位置)

(一)学习笔记--页面加载过程

 

2.DNS(Domain Name Serivice)查询

当URL被解析后,我们拿到一个域名,但互联网上资源都是用IP地址定位的,没有域名什么事,所以需要把域名转换为IP地址;

DNS查询有两个端,一个是发起请求的浏览器,另外一个是处理查询请求的DNS服务器,试想一下,如果用户每次请求都要去查询下DNS服务器,那这个量级是巨大的;所以DNS上还有个DNS缓存

就比如你(浏览器)去跟一个老爷爷问图书馆在哪,老爷爷也不记得要查一下本本(DNS服务器),然后告诉了你;过一还又一个人来问图书馆在哪,这下老爷爷可以很快的告诉对方,因为大脑(DNS缓存)记得;一个月后,第三个人来问图书馆位置,此时老爷爷记性不好,需要重新翻小本本(这叫DNS缓存时间,过期就忘)

(一)学习笔记--页面加载过程

如下运用,可以让href中的网址被DNS缓存起来,增快下次请求速度

(一)学习笔记--页面加载过程

3.资源请求

请求的资源如html/css/js等;也有两个角色,一个是浏览器,一个是后端服务器;发起请求时,浏览器带着一堆信息去后端服务器上寻找资源,这个请求包含两部分,一个是Requst-header(请求头:我要请求谁,我从哪来,要什么格式数据,用的什么浏览器,Cookie等),另一个是参数(url或body);然后服务器返回status+Response-header+body;

(一)学习笔记--页面加载过程

4.浏览器解析(下图为大概过程)

(一)学习笔记--页面加载过程