Fiddler 实战:从 HTTP 抓包到接口调试

Fiddler 使用:从 HTTP 抓包到接口调试 在开发 Web、API、移动端应用时,经常会遇到: 前端请求到底发送了什么? Token 和 Cookie 有没有正确携带? 接口为什么返回 401、403 或 500? 浏览器能访问,程序却访问失败? 如何修改请求参数重新测试? 后端接口还没开发好,前端怎么继续联调? 这类问题可以使用 Fiddler 快速定位。 Fiddler 是一款 HTTP/HTTPS 调试代理工具,可以捕获客户端与服务器之间的网络请求,并查看、修改、重放请求和响应。 目前主要有 Fiddler Classic 和 Fiddler Everywhere。Classic 主要面向 Windows,并已经进入维护阶段;Everywhere 是当前的跨平台版本。 1. Fiddler 是什么? 正常情况下: 浏览器 ↓ Web Server ↓ 服务器 启用 Fiddler 后: 浏览器 ↓ Fiddler ↓ Web Server Fiddler 作为代理,可以看到: Request ├── URL ├── Method ├── Headers ├── Cookie └── Body Response ├── Status Code ├── Headers └── Body 例如:...

2024年09月10日 · 3 min · Leanku

HTTPS 详解:TLS 如何保护 HTTP 通信?

HTTPS 详解:TLS 如何保护 HTTP 通信? HTTP 解决的是: 客户端和服务器如何表达请求与响应。 但如果直接使用 HTTP: Client ─────── HTTP ───────> Server 网络上的中间节点理论上可以看到通信内容,甚至可能篡改数据。 例如登录请求: POST /login HTTP/1.1 Content-Type: application/json { "username": "tom", "password": "123456" } 如果通信没有加密,用户名、密码以及响应内容都可能暴露。 因此 Web 中通常使用: HTTPS = HTTP + TLS TLS 位于 HTTP 与底层传输之间,为上层应用提供安全通信能力。 TLS 的目标主要包括: 机密性 完整性 身份认证 TLS 1.3 规范明确将建立安全信道、认证通信对端以及保护应用数据作为核心目标。需要注意的是,TLS 1.3 的 RFC 8446 已被 RFC 9846 更新,因此实际学习和实现时应同时关注最新规范。 1. 为什么需要 HTTPS? 先看一个最简单的 HTTP 请求: Client │ │ HTTP │ username=tom │ password=123456 ▼ Server 假设客户端与服务器之间经过:...

2023年09月10日 · 6 min · Leanku