news 2026/8/30 12:37:25

【计算机网络】一文看懂 HTTP协议(上)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【计算机网络】一文看懂 HTTP协议(上)

一、 什么是 HTTP?

如果说 IP 是地址,TCP 是快递员,那么HTTP 就是你要寄的那封信的内容格式

它的官方定义是:一个基于请求与响应无状态的、应用层的协议。

  • 请求与响应:你(客户端)发一个 Request,我(服务端)回一个 Response。没人点菜,厨师是不会主动上菜的。

  • 无状态:HTTP 像个“健忘症”,它不记得你上次发了什么。为了让它“拥有记忆”,才引入了 Cookie、Session 或你在项目中常用的JWT


二、 HTTP 状态码:后端排查的“信号灯”

状态码是后端开发最直观的排错依据。我们不需要记住所有的状态码,但是对于常见的状态码我们也要了然于心。

状态码类别核心含义面试 / 实战必考点
1011xx 信息切换协议常用于WebSocket握手升级,将 HTTP 转为全双工长连接。
2062xx 成功部分内容断点续传或分片下载的标志。服务端处理了带有Range头的请求。
301/3023xx 重定向永久/临时重定向301请求资源已不在;302 常用于未登录拦截跳转。
3043xx 重定向未修改协商缓存命中的标志。服务端告知直接用本地缓存,不传实体,省带宽。
401/4034xx 客户端错未认证/未授权401 是“你是谁?(没 Token)”;403 是“没权限(你是普通用户想进后台)”。
502/5045xx 服务端错网关错误/超时502 通常是后端服务挂了;504 是处理太慢(慢 SQL、死锁)导致网关等不及了。

三、 HTTP 的优缺点

优点:

  • 简单灵活:纯文本格式,解析方便,且能传输图片、JSON、视频等多种格式。

  • 性能:在现代协议优化下,性能开销已非常小。

缺点(与 HTTPS 的核心区别):

  • 被窃听:明文传输,信息像在裸奔。

  • 被篡改:中间人可以随意改动你的包裹。

  • 被冒充:无法确认发件人真的是你想要联系的那个人。

  • 队头阻塞:在 1.1 版本中,管道化请求必须按顺序返回,前面的卡住后面全等死。


四、 HTTP每个版本的区别”

这是面试最能体现水平的部分,咱们看 HTTP 如何脱胎换骨:

1. HTTP/1.1:建立标准与长连接
  • Keep-Alive:默认开启长连接,多个请求复用同一个 TCP 通道,不用每次都握手。

  • 问题:存在 HTTP 层的队头阻塞

2. HTTP/2.0:性能质变与二进制化
  • 二进制分帧:解析速度极快。

  • 多路复用:真正解决了 HTTP 层的阻塞。一个连接里可以同时发多个请求,乱序返回再根据 ID 组装。

  • 头部压缩 (HPACK):压缩重复的 Header,节省大量带宽。

  • 服务器推送:服务端可以主动把 CSS/JS 塞给客户端,不用等对方请求。

3. HTTP/3.0:更换基石(UDP/QUIC)
  • 核心逻辑:由于 TCP 丢包会导致整个连接阻塞(TCP 层队头阻塞),3.0 直接放弃 TCP,改用基于UDPQUIC协议。

  • 0-RTT 握手:连接握手和 TLS 握手合并,重连时几乎 0 耗时。

  • 连接迁移:基于 Connection ID。你从 Wi-Fi 换到 5G,连接也不会断开。

特性HTTP/1.1HTTP/2HTTP/3
传输层协议TCPTCPUDP (QUIC)
数据格式文本二进制分帧二进制分帧
多路复用解决 HTTP 阻塞解决 TCP 阻塞
首部压缩有 (HPACK)有 (QPACK)
握手延迟1-2 RTT1-2 RTT0-1 RTT

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/23 17:28:14

TSMaster TIO9000模块从入门到精通:Windows环境下的板卡配置全流程指南

TSMaster TIO9000模块从入门到精通:Windows环境下的板卡配置全流程指南 如果你是一位汽车电子、嵌入式系统或工业自动化领域的工程师,当项目需要快速搭建一个灵活、可编程的硬件I/O测试环境时,TIO9000系列模块很可能已经进入了你的视野。它不…

作者头像 李华
网站建设 2026/8/23 12:46:31

iOS端PDF文档语音朗读全攻略:从设置到实战

1. 为什么你需要PDF语音朗读?不止是“解放双眼” 你可能觉得,在手机上看PDF,无非就是放大、缩小、滑动,眼睛累了就歇会儿。我以前也这么想,直到有一次我需要在一周内啃完一份三百多页的技术白皮书,每天对着…

作者头像 李华
网站建设 2026/8/23 16:55:26

LogicFlow节点连线规则实战:如何用sourceRules和targetRules实现精准控制

LogicFlow节点连线规则实战:如何用sourceRules和targetRules实现精准控制 最近在重构一个内部流程设计器时,我遇到了一个典型问题:用户总是能随意连接节点,导致生成大量无效甚至错误的流程图。比如,把“结束”节点连到…

作者头像 李华
网站建设 2026/8/23 11:54:08

W10与VMware无缝协同:共享文件夹的配置、排错与自动化运维实践

1. 从零开始:为什么我们需要共享文件夹? 如果你和我一样,经常在Windows 10电脑上用VMware跑个Linux虚拟机做开发或者测试,那你肯定遇到过这个头疼事儿:怎么把Windows桌面上的代码、文档或者安装包,快速又方…

作者头像 李华
网站建设 2026/8/23 21:54:16

电力温度预测实战:IBM Granite FlowState R1时间序列模型部署与应用

电力温度预测实战:IBM Granite FlowState R1时间序列模型部署与应用 导语 想象一下,你是一家电力公司的运维工程师,每天需要监控数百个变压器的温度数据,预测未来几小时的温度变化,提前发现潜在故障风险。传统方法要…

作者头像 李华