我有一个与一些REST服务对话的Java应用程序,我想看看使用Fiddler的HTTP流量.
Fiddler充当localhost:8888的代理,因此以下Java VM选项应该配置java以使用此代理:
-Dhttp.proxyHost=localhost -Dhttp.proxyPort=8888
Run Code Online (Sandbox Code Playgroud)
但是,如果我在运行我要调试的java应用程序时传递这些参数,我看不到Fiddler中没有流量.
我编写了一个测试Java应用程序,它只使用HttpURLConnection执行HTTP GET.
如果我在从Eclipse调试它时指定上述命令行参数,我可以在fiddler中查看来自此应用程序的HTTP流量.
http.proxyHost/Port可能不适用于所有Java HTTP操作的原因是什么?
您可以使用以下代码 (HttpClient 4.x) 告诉 HttpClient 遵循 JDK 系统参数。
public static final DefaultHttpClient HTTP = new DefaultHttpClient();
ProxySelectorRoutePlanner routePlanner = new ProxySelectorRoutePlanner(HTTP.getConnectionManager().getSchemeRegistry(),
ProxySelector.getDefault());
HTTP.setRoutePlanner(routePlanner);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5078 次 |
| 最近记录: |