八股文打卡day1——计算机网络(1)

面试题:从输入 URL 到页面展示到底发生了什么?

我的回答:

1.首先在浏览器缓存中寻找该页面资源。如果找到了,就返回页面资源。如果没找到,就进行网络请求。
2.在进行网络请求前,先进行DNS的解析,以获取请求域名的IP地址,如果使用的是https协议的话,还需要建立TLS连接。整个解析过程是:先在浏览器缓存中找,找不到就去本地Host文件找,还找不到就到路由器缓存中找,还找不到就到DNS服务器,然后再到根DNS服务器,逐层向上找。从而对域名进行DNS解析。
3.DNS解析得到服务器IP地址,建立TCP连接。
4.浏览器和服务器建立连接之后,浏览器这边构建请求信息,向服务器发起请求。将浏览器中的cookie信息也加入,构建请求行和请求体,发起请求。
5.服务器进行响应,返回响应信息。如果响应状态码是301和302的话,就进行重定向。如果是字节流类型的话,会将请求提交到下载管理器。返回的是页面的话,就进行下一步的页面渲染。
6.页面渲染。浏览器解析html文件,构建DOM树,对CSS样式进行解析,然后将CSS样式和DOM树进行合并,构建渲染树。最后布局和绘制渲染树,完成页面展示。

回答八股的时间:2023.12.16

相关推荐

  1. 八股文day1——计算机网络1

    2023-12-17 14:30:02       55 阅读
  2. 八股文day4——计算机网络(4)

    2023-12-17 14:30:02       57 阅读
  3. 八股文day6——计算机网络(6)

    2023-12-17 14:30:02       61 阅读
  4. 八股文day7——计算机网络(7)

    2023-12-17 14:30:02       54 阅读
  5. 八股文day9——计算机网络(9)

    2023-12-17 14:30:02       55 阅读
  6. 八股文day10——计算机网络(10)

    2023-12-17 14:30:02       50 阅读
  7. 八股文day11——计算机网络(11)

    2023-12-17 14:30:02       53 阅读
  8. 八股文day13——计算机网络(13)

    2023-12-17 14:30:02       48 阅读
  9. 八股文day15——计算机网络(15)

    2023-12-17 14:30:02       56 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-17 14:30:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-17 14:30:02       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-17 14:30:02       87 阅读
  4. Python语言-面向对象

    2023-12-17 14:30:02       96 阅读

热门阅读

  1. 452. Minimum Number of Arrows to Burst Balloons

    2023-12-17 14:30:02       64 阅读
  2. 算法:对称二叉树

    2023-12-17 14:30:02       49 阅读
  3. 基于pytorch 的RNN实现字符级姓氏文本分类

    2023-12-17 14:30:02       51 阅读
  4. 746. 使用最小花费爬楼梯

    2023-12-17 14:30:02       67 阅读
  5. mysql8升级测试

    2023-12-17 14:30:02       48 阅读