当在浏览器中,输入一个 URL,HTTP请求及返回的过程时间节点如下。
- 为什么先做redirect,因为浏览器很可以已经记录过这个要访问的地址以及永久跳转成的一个新地址,所以一开始浏览器需要判断,是否需要redirect 以及redirect 到哪里。
- 第二步是看缓存。因为请求的资源可能已经缓存过了,如果有缓存那么直接从缓存中获取数据,否则第三步DNS解析。
- DNS 解析即把域名解析为ip 地址
- 有了IP 后就可以进行TCP 连接(三次握手)如果是HTTPS 的话,就不仅是TCP协议还有保障安全的机制
- 接着就是真正的HTTP 请求的数据包
- 服务器接受到HTTP 请求后,再返回数据,这才结束了一个HTTP 请求