文章目录

HTTP 面试题总结笔记

适合目标:集中复习 HTTP 高频面试题,建立一套更容易输出的答题框架。
学习定位:这一份偏“面试题归纳 + 标准答法 + 易错点提醒”。
学习原则:不要只背关键词,要按“定义 -> 原因 -> 区别 -> 场景”来回答。


目录

  1. HTTP 高频面试题总览
  2. 基础概念题
  3. 方法与状态码题
  4. HTTPS 与安全题
  5. 缓存题
  6. 版本演进题
  7. Cookie / Session / Token 题
  8. 高频答题模板
  9. 一页总结

1. HTTP 高频面试题总览

最常见问题:

  1. HTTP 和 HTTPS 的区别
  2. GET 和 POST 的区别
  3. HTTP 常见状态码
  4. 强缓存和协商缓存
  5. Cookie、Session、Token 的区别
  6. HTTP/1.1、HTTP/2、HTTP/3 的区别
  7. 浏览器输入 URL 后发生了什么

2. 基础概念题

2.1 什么是 HTTP

答法:

HTTP 是应用层协议,用于客户端和服务器之间传输超文本以及其他类型资源。它定义了请求和响应的格式与规则。

2.2 HTTP 是无状态的是什么意思

答法:

无状态是指协议本身不会自动记住多个请求之间的业务状态,每次请求本身是独立的,会话状态需要通过 Cookie、Session、Token 等机制来维护。

2.3 浏览器输入 URL 后发生了什么

答法主线:

  1. 解析 URL
  2. DNS 查询
  3. 建立 TCP 连接
  4. HTTPS 还要做 TLS 握手
  5. 发送 HTTP 请求
  6. 服务端返回响应
  7. 浏览器解析并渲染页面

3. 方法与状态码题

3.1 GET 和 POST 的区别

推荐回答:

  1. 语义上,GET 用于获取资源,POST 用于提交资源
  2. GET 通常是幂等的,POST 不一定
  3. GET 参数通常放 URL,POST 参数通常放请求体
  4. 不能简单说 GET 不安全或 POST 更安全,安全性关键还看 HTTPS 和业务设计

3.2 常见状态码有哪些

推荐回答:

  1. 200 OK
  2. 201 Created
  3. 204 No Content
  4. 301 Moved Permanently
  5. 302 Found
  6. 304 Not Modified
  7. 400 Bad Request
  8. 401 Unauthorized
  9. 403 Forbidden
  10. 404 Not Found
  11. 500 Internal Server Error
  12. 502 Bad Gateway
  13. 503 Service Unavailable

4. HTTPS 与安全题

4.1 HTTP 和 HTTPS 的区别

推荐回答:

HTTPS = HTTP + TLS。
相比 HTTP,HTTPS 提供:

  1. 加密
  2. 身份认证
  3. 完整性保护

4.2 HTTPS 为什么更安全

因为它能防止:

  1. 明文窃听
  2. 中间人篡改
  3. 身份伪装

5. 缓存题

5.1 强缓存和协商缓存的区别

答法:

  1. 强缓存命中时浏览器直接使用缓存,不发请求
  2. 协商缓存会发请求给服务端确认资源是否变化

5.2 Cache-ControlExpires 的区别

答法:

  1. Expires 是绝对时间
  2. Cache-Control 更灵活,优先级更高

5.3 ETagLast-Modified 的区别

答法:

  1. ETag 更精确
  2. Last-Modified 更简单但精度有限

6. 版本演进题

6.1 HTTP/1.1 和 HTTP/2 的区别

答法:

  1. HTTP/2 是二进制分帧
  2. 支持多路复用
  3. 有头部压缩
  4. 改善了 HTTP/1.1 的性能问题

6.2 HTTP/2 和 HTTP/3 的区别

答法:

HTTP/3 基于 QUIC,不再依赖 TCP,在弱网和连接迁移场景下更有优势。


7. Cookie / Session / Token 题

7.1 Cookie、Session、Token 的区别

答法主线:

  1. Cookie 是浏览器保存的数据
  2. Session 是服务端保存的会话
  3. Token 是客户端持有并随请求携带的身份凭证

7.2 Token 一定比 Cookie 安全吗

不能简单这么说。
安全性取决于:

  1. 传输方式
  2. 存储方式
  3. 是否使用 HTTPS
  4. 是否有 XSS / CSRF 风险控制

8. 高频答题模板

8.1 区别类问题

答法模板:

  1. 先说定义
  2. 再说核心区别
  3. 最后说使用场景

8.2 原理类问题

答法模板:

  1. 先说为什么出现
  2. 再说怎么工作
  3. 最后说解决了什么问题

8.3 面试表达建议

不要只背关键词,最好用:

  1. 定义
  2. 原因
  3. 过程
  4. 结论

这样的结构输出。


9. 一页总结

9.1 必背题

  1. HTTP / HTTPS
  2. GET / POST
  3. 状态码
  4. 缓存
  5. 版本演进
  6. Cookie / Session / Token

9.2 记忆口诀

基础先讲请求响应,安全讲 HTTPS,性能讲缓存和版本,状态讲 Cookie/Session/Token。