HTTP 与 Web 基础面试笔记

HTTP 与 Web 基础面试笔记

1 Session 与 Cookie 的区别

维度 Cookie Session
存储位置 客户端(浏览器) 服务器端
安全性 明文存储,可被篡改 相对安全
生命周期 可设置过期时间,可持久化 一般依赖会话,超时失效
大小限制 有限(约 4KB) 服务端控制
性能 每次请求携带,增加带宽 服务端保存,占用服务器内存

配合使用:Session 一般用 SessionID 标识,SessionID 通过 Cookie 下发到浏览器;客户端请求时带上 Cookie,服务器据此查找对应的 Session。

2 Cookie 在 HTTP 报文中的位置

Cookie 位于 HTTP 请求报文的 请求头(Request Headers) 中(Cookie: name=value),响应报文中通过 Set-Cookie 响应头设置。

3 HTTP 与 HTTPS

  • HTTP:明文传输,端口 80;
  • HTTPS:HTTP + SSL/TLS 加密传输,端口 443,通过证书实现身份认证和数据加密;
  • HTTPS 建立过程:客户端发起请求 → 服务器返回证书(含公钥)→ 客户端验证证书并协商密钥 → 对称加密通信。

4 HTTP 幂等性

幂等性:相同请求执行 N>0 次产生的副作用与执行一次相同。

  • 幂等方法:GET、HEAD、PUT、DELETE(正确实现下);
  • 非幂等方法:POST(每次创建资源);
  • 所有 safe(安全) 方法都是幂等的(GET、HEAD、OPTIONS、TRACE)。

5 常见出题点

  • http 常用首部字段(请求头/响应头/实体头);
  • http 报文头结构、报文长度边界字段(Content-Length、Transfer-Encoding: chunked);
  • http 和 https 的区别、长连接与短连接的优劣;
  • cookie 在 http 报文的位置。

更完整的 TCP/HTTP 知识点见《TCP/IP 网络协议面试笔记》和《Nginx 与 IO 多路复用面试笔记》。

阅读 — · 全站 —
🎸 我的歌单 0 首