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

  1. 输入网址,解析URL,准备发送HTTP请求

  2. 检查浏览器是否有缓存,若有则直接返回,若没有则进行下一步网络请求

  3. DNS域名解析,网络请求前,进行DNS解析,获取IP地址,若请求协议是HTTPS,则需建立TLS连接,查询ip的顺序:本地浏览器缓存 -> 本地host文件 -> 路由器缓存 -> DNS服务器 -> 根DNS服器

4.建立连接,通过tcp三次握手建立连接

  1. 浏览器发送HTTP请求,构建请求头、请求行等信息,并把cookie等加入到请求头中,发送请求(若是HTTPS,则还需加解密过程)

  2. 服务器处理请求并返回HTTP资源

  3. 断开连接,通过tcp四次挥手断开连接

  4. 浏览器解析并渲染页面

  • 浏览器解析响应头。若响应头状态码为301、302,会重定向到新地址;若响应数据类型是字节流类型,一般会将请求提交给下载管理器;若是HTML类型,会进入下一部渲染流程。
  • 浏览器解析HTML文件,创建DOM树,解析CSS进行样式计算,然后将CSS和DOM合并,构建渲染树;最后布局和绘制渲染树,完成页面展示。
相关推荐
00后程序员张几秒前
IOScer 开发环境证书包括哪些,证书、描述文件与 App ID 的协同管理实践
android·ios·小程序·https·uni-app·iphone·webview
qq_411262428 分钟前
使用ESP-IDF的HTTP OTA Demo测试,开启蓝牙功能后,HTTP下载速度就非常慢
网络·网络协议·http
鲨莎分不晴40 分钟前
HTTP协议全解:从三次握手到HTTP/3的进化史
网络·网络协议·http
小鹿学程序1 小时前
IP地址消失
网络·网络协议·tcp/ip
网安INF2 小时前
典型网络攻击分析:ARP欺骗与TCP劫持
网络·网络协议·tcp/ip·安全·网络安全
VekiSon2 小时前
Linux网络编程——网络数据封装与 HTTP 协议
网络·网络协议·http
2501_938810112 小时前
动态IP与短效IP的关系
服务器·网络协议·tcp/ip
东东的脑洞2 小时前
【面试突击】深入理解 TCP 三次握手与 HTTP 协议演进
tcp/ip·http·面试
ベadvance courageouslyミ2 小时前
网络编程(三)HTTP
网络·网络协议·http
微爱帮监所写信寄信2 小时前
HTTPS技术架构与微爱帮监狱写信寄信小程序EV证书深度解析
网络协议·http·https·监狱寄信·微爱帮