从输入URL到页面呈现
面试中有一道经典题:"从输入 URL 到页面呈现,中间发生了什么?"
/**
* 我不知道的 HTTP
* 共 5 篇文章
*/
export const series = {
name : "我不知道的 HTTP" ,
count : 5 ,
guide : "我不知道的HTTP — 系列导读与阅读路径" ,
description : "《我不知道的 HTTP》系列导读、阅读路径与文章索引。" ,
};
文章数量: 5 篇
根据不同背景选择入口:
如果想系统学习: 按编号 01 → 05 顺序阅读
如果只关心面试高频: 重点看 01(URL到页面)、03(缓存机制)、04(HTTPS握手)
如果在做性能优化: 重点看 03(缓存策略)、05(HTTP/2与HTTP/3)
| # | 文章 | 核心内容 |
|---|---|---|
| 01 | 从输入URL到页面呈现 | DNS多级缓存、TCP三次握手、TLS握手、CDN介入时机 |
| # | 文章 | 核心内容 |
|---|---|---|
| 02 | Cookie到底是怎么工作的 | Cookie自动携带机制、SameSite三种策略、Domain子域共享、第三方Cookie现状 |
| 03 | 浏览器缓存:强缓存、协商缓存与整条链路 | no-cache vs no-store、ETag/Last-Modified、缓存链路三级协作、immutable |
| # | 文章 | 核心内容 |
|---|---|---|
| 04 | HTTPS握手:TLS到底做了什么 | TLS 1.3 一次往返握手、混合加密、前向保密、证书链验证 |
| 05 | 从HTTP/1.1到HTTP/3:队头阻塞是如何被消灭的 | 应用层vs传输层队头阻塞、QUIC流独立性、连接迁移、协议僵化 |
面试中有一道经典题:"从输入 URL 到页面呈现,中间发生了什么?"
很多人以为 Cookie 就是"在浏览器里存个值",需要的时候取出来用。但实际上,Cookie 和 localStorage 有一个本质区别:Cookie 会在每一次 HTTP 请求中被自动携带发送到服务器。
很多人以为浏览器缓存就是"强缓存和协商缓存两种",面试能说出这两个词就算过关。但实际上,缓存不是一个二选一的开关——它是一条从客户端到代理再到源服务器的完整链路,每一级都有自己的缓存策略,每一级都可能返回不同的响应。
很多人以为 HTTPS 就是"给 HTTP 加了把锁",地址栏多一个小锁图标,仅此而已。但实际上,HTTPS 在 HTTP 和 TCP 之间插入了一整层协议——TLS,它独立解决了三个完全不同的安全问题:机密性(数据不被偷看)、完整性(数据不被篡改)、身份认证(对方不是冒充的)…
HTTP 协议从 1.1 到 2 再到 3,每一次大版本升级都在解决同一个核心问题——队头阻塞(Head-of-Line Blocking)。