Fiddler的Java抓包

代码处理

System.setProperty("http.proxySet", "true");
System.setProperty("http.proxyHost", "10.1.108.32");
System.setProperty("http.proxyPort", "8888");
System.setProperty("https.proxyHost", "10.1.108.32");
System.setProperty("https.proxyPort", "8888");
   JVM参数配置(两者配置一个即可)
 -DproxySet=true -DproxyHost=127.0.0.1 -DproxyPort=8888 
 
  如果是Https访问,还添加上
-Djavax.net.ssl.trustStore=FiddlerKeystore -Djavax.net.ssl.trustStorePassword=aaaaaa

   但是所有这一切的前提是你的Java实现里面是通过读取这些值来是指proxy,比如HttpClient里面就没有做代理设置,这样只能手工添加上:

 client.getHostConfiguration().setProxy("localhost", 8888); 
  包括使用第三方的Http类也是如此;如果第三方不是采用Java原生那种写法就会有问题。
  
  Fiddler的原理就是将Web请求转到Fiddler指定的端口(默认8888),fiddler处理完成后,在转交到这是的设备。在这个过程中,fiddler就能够获取发送到端口的数据。为什么火狐以及chrome不好用?因为没有配置代理,代理已配置应该都好用。
原文地址:https://www.cnblogs.com/xiashiwendao/p/8504908.html