这个是一道非常经典的面试题,也是我在面试前端和后端经常会问的一个问题。因为这道题可以很大程度上考验一个开发者的技术深度和广度,而不仅仅限于平时日常工作中做的那些东西。
这道题严格上来说并没有标准答案,因为每一个环节都可以做非常深的延展。我这边也是参考一些网上的答案,然后配合自己的见解,给出一个我自己认为的一个比较全的答案。
主要分为以下几个环境:
- 浏览器解析该URL得到IP地址
- 浏览器根据解析得到的IP地址向服务器发送一个 HTTP 请求
- 服务器收到请求并进行处理,最后返回响应
- 浏览器对该响应进行解码,渲染显示
- 断开 TCP 连接,并将资源进行本地缓存