文章目录

- 打开浏览器,在地址栏输出 URL
- DNS 解析过程
- 由于浏览器会缓存 DNS 记录一段时间,如果在浏览器中找到了 DNS 记录就可以访问指定的 IP
- 如果浏览器中找不到 DNS 记录,会在系统中去寻找,比如 windows 的 hosts 文件中寻找 IP
- 如果系统的 hosts 也找不到 DNS 记录,就会在路由器缓存中查找
- 如果路由器缓存也找不到,就会递归搜索 DNS 服务器,这样最终拿到域名对应的 IP 地址
- 向指定 IP 发送请求
- 对于 https 而言,服务器会传给浏览器一个数字证书,其中包含了服务端公钥和被上层 CA 证书加密后的服务端公钥,当浏览器拿到数字证书之后通过证书链进行解密,如果最终寻找到最上层根证书,即可保证证书链完整就表示 https 请求是安全的,之后就可以通过客户端对称密钥加密传输了
- 然后请求,如果之前浏览器有访问过并且登录过,浏览器会保存有该网站的 cookies 信息,然后通过浏览器中拿到 cookies 数据直接访问网站
- 后台响应数据
- 客户端请求依据接口访问服务器后台特定 controller 控制器,然后 controller 进行逻辑判断并返回数据给浏览器
- 浏览器的渲染
- 浏览器接收数据对资源进行加载,解析中生成 dom 树,然后对 dom 树进行可视化操作,渲染到屏幕上,同时执行 js