在服务端开发中,我们经常需要监控应用内部发出的 HTTP 请求,无论是使用 Apache HttpClient 还是 JDK 自带的 HttpURLConnection。有时候为了排查网络交互问题,直接查看代码日志不够直观,这时候就需要借助抓包工具。
Fiddler 是一个经典的 HTTP 调试代理工具,它默认作为系统的代理服务器运行。只要让 JVM 的请求流量经过 Fiddler,就能在界面上看到完整的请求头和响应体。Fiddler 的默认监听端口是 8888。
配置起来非常简单,不需要修改业务代码,只需要在启动 JVM 时添加系统属性参数。对于标准的 JDK 网络类,推荐使用以下参数指定代理主机和端口:
java -Dhttp.proxyHost=localhost -Dhttp.proxyPort=8888 -jar your-app.jar
加上这些参数后,JVM 发起的所有 HTTP 请求都会自动转发到 Fiddler。如果涉及 HTTPS 请求,还需要在 Fiddler 中开启 HTTPS 解密功能,并在客户端信任 Fiddler 的根证书,否则只能看到加密的握手过程。
这种方法的优势在于对业务代码零侵入,适合快速验证网络连通性或分析第三方接口调用情况。


