六、一个完整的HTTP请求过程
完整的HTTP请求全过程
当在浏览器的地址栏输入 https://www.cnblogs.com ,然后回车,回车这一瞬间到看到把页面加载出来,浏览器到底做了那些工作?
以下过程仅是个人理解:
1. 首先请求dns服务器(会首先在浏览缓存中获取,找不到就会去host文件中获取,最后才会dns获取),对www.cnblogs.com进行域名解析,获取ip等信息
2. 根据拿到的服务器的地址信息,发起发起TCP的3次握手
3. 建立TCP连接后,向服务器发起http请求
4. 服务器响应http请求,向浏览器发送html代码
5. 浏览器解析html代码,并请求html代码中的资源(如js、css、图片等)
6. 浏览器对页面进行渲染呈现给用户
7.关闭TCP连接
上述过程中,并不是每次请求都将上述步骤全部执行一遍,第1步,只有请求一个新的域名时,才会去dns中解析;
在http1.0时,默认使用的是短连接,第2步每次请求都会执行,但是在 http1.1之后,默认使用的是长连接,TCP连接是复用的,也就是说,在第一次请求结束后,在连接没有断开前,以后的每次请求就只是执行 第3步~第6步。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)