HTTP 面试题总结笔记
适合目标:集中复习 HTTP 高频面试题,建立一套更容易输出的答题框架。
学习定位:这一份偏“面试题归纳 + 标准答法 + 易错点提醒”。
学习原则:不要只背关键词,要按“定义 -> 原因 -> 区别 -> 场景”来回答。
目录
- HTTP 高频面试题总览
- 基础概念题
- 方法与状态码题
- HTTPS 与安全题
- 缓存题
- 版本演进题
- Cookie / Session / Token 题
- 高频答题模板
- 一页总结
1. HTTP 高频面试题总览
最常见问题:
- HTTP 和 HTTPS 的区别
- GET 和 POST 的区别
- HTTP 常见状态码
- 强缓存和协商缓存
- Cookie、Session、Token 的区别
- HTTP/1.1、HTTP/2、HTTP/3 的区别
- 浏览器输入 URL 后发生了什么
2. 基础概念题
2.1 什么是 HTTP
答法:
HTTP 是应用层协议,用于客户端和服务器之间传输超文本以及其他类型资源。它定义了请求和响应的格式与规则。
2.2 HTTP 是无状态的是什么意思
答法:
无状态是指协议本身不会自动记住多个请求之间的业务状态,每次请求本身是独立的,会话状态需要通过 Cookie、Session、Token 等机制来维护。
2.3 浏览器输入 URL 后发生了什么
答法主线:
- 解析 URL
- DNS 查询
- 建立 TCP 连接
- HTTPS 还要做 TLS 握手
- 发送 HTTP 请求
- 服务端返回响应
- 浏览器解析并渲染页面
3. 方法与状态码题
3.1 GET 和 POST 的区别
推荐回答:
- 语义上,GET 用于获取资源,POST 用于提交资源
- GET 通常是幂等的,POST 不一定
- GET 参数通常放 URL,POST 参数通常放请求体
- 不能简单说 GET 不安全或 POST 更安全,安全性关键还看 HTTPS 和业务设计
3.2 常见状态码有哪些
推荐回答:
200 OK201 Created204 No Content301 Moved Permanently302 Found304 Not Modified400 Bad Request401 Unauthorized403 Forbidden404 Not Found500 Internal Server Error502 Bad Gateway503 Service Unavailable
4. HTTPS 与安全题
4.1 HTTP 和 HTTPS 的区别
推荐回答:
HTTPS = HTTP + TLS。
相比 HTTP,HTTPS 提供:
- 加密
- 身份认证
- 完整性保护
4.2 HTTPS 为什么更安全
因为它能防止:
- 明文窃听
- 中间人篡改
- 身份伪装
5. 缓存题
5.1 强缓存和协商缓存的区别
答法:
- 强缓存命中时浏览器直接使用缓存,不发请求
- 协商缓存会发请求给服务端确认资源是否变化
5.2 Cache-Control 和 Expires 的区别
答法:
Expires是绝对时间Cache-Control更灵活,优先级更高
5.3 ETag 和 Last-Modified 的区别
答法:
ETag更精确Last-Modified更简单但精度有限
6. 版本演进题
6.1 HTTP/1.1 和 HTTP/2 的区别
答法:
- HTTP/2 是二进制分帧
- 支持多路复用
- 有头部压缩
- 改善了 HTTP/1.1 的性能问题
6.2 HTTP/2 和 HTTP/3 的区别
答法:
HTTP/3 基于 QUIC,不再依赖 TCP,在弱网和连接迁移场景下更有优势。
7. Cookie / Session / Token 题
7.1 Cookie、Session、Token 的区别
答法主线:
- Cookie 是浏览器保存的数据
- Session 是服务端保存的会话
- Token 是客户端持有并随请求携带的身份凭证
7.2 Token 一定比 Cookie 安全吗
不能简单这么说。
安全性取决于:
- 传输方式
- 存储方式
- 是否使用 HTTPS
- 是否有 XSS / CSRF 风险控制
8. 高频答题模板
8.1 区别类问题
答法模板:
- 先说定义
- 再说核心区别
- 最后说使用场景
8.2 原理类问题
答法模板:
- 先说为什么出现
- 再说怎么工作
- 最后说解决了什么问题
8.3 面试表达建议
不要只背关键词,最好用:
- 定义
- 原因
- 过程
- 结论
这样的结构输出。
9. 一页总结
9.1 必背题
- HTTP / HTTPS
- GET / POST
- 状态码
- 缓存
- 版本演进
- Cookie / Session / Token
9.2 记忆口诀
基础先讲请求响应,安全讲 HTTPS,性能讲缓存和版本,状态讲 Cookie/Session/Token。