Appearance
HTTP 基础:报文语义、头部字段与资源表示
主题边界
- HTTP 是应用层协议,用来表达资源的请求、响应和表示形式。
- 基础题的核心不是背请求行和响应头,而是知道方法、状态码、头部和 body 分别在表达什么。
机制与流程
- 请求通常由方法、目标 URI、头部和可选消息体组成;响应由状态码、头部和响应体组成。
- 头部字段用于表达缓存、内容协商、认证、长度、压缩、Cookie、跨域授权等元信息。
- HTTP 关心的是资源表示和语义,不关心底层可靠传输,这部分由 TCP 或 QUIC 等协议承担。
关键差异
- 同一个资源可以有多种表示形式,例如不同语言、压缩格式、内容类型,这就是内容协商的基础。
- 2xx、3xx、4xx、5xx 是状态码大类,不同码值表达的语义差异很大,不能只记“成功 / 失败”。
边界条件
- 状态码不是前端判断业务成功的唯一依据,很多业务仍会在 200 内再表达业务错误码。
- HTTP 请求成功不等于页面一定正常,缓存、CORS、解析和脚本执行仍可能让页面失败。
工程落点
- 理解 HTTP 报文语义后,缓存、认证、代理、上传下载和调试网络问题都会更直接。
- 这是后续版本演进、TLS、CORS、重试和 CDN 话题的共同基础。