1.HTTP 是一种允许浏览器向服务器获取资源的协议
1. 构建请求
2. 查找缓存
3. 准备 IP 地址和端口
4. 等待 TCP 队列 (同一个域名同时最多只能建立 6 个 TCP 连接)
5. 建立 TCP 连接
6. 发送 HTTP 请求
7. 服务器处理请求
8. 服务器返回请求
9. 断开连接
1. 为什么很多站点第二次打开速度会很快?
很多网站第二次访问能够秒开,是因为这些网站把很多资源都缓存在了本地,浏览器缓存直接使用本地副本来回应请求,而不会产生真实的网络请求,从而节省了时间。同时,DNS 数据也被浏览器缓存了,这又省去了 DNS 查询环节。
2. 登录状态是如何保持的?
如果服务器端发送的响应头内有 Set-Cookie 的字段,那么浏览器就会将该字段的内容保持到本地。当下次客户端再往该服务器发送请求时,客户端会自动在请求头中加入 Cookie 值后再发送出去。服务器端发现客户端发送过来的 Cookie 后,会去检查究竟是从哪一个客户端发来的连接请求,然后对比服务器上的记录,最后得到该用户的状态信息