强制 java web start 使用像 Fiddler 这样的代理而不接触代码

2024-01-02

对于自动软件项目,我需要来自 Java Web Start 应用程序的一些请求和响应。

所以我安装了 Fiddler Web Debugger,然后尝试使用这个 fiddler 代理来嗅探所有请求。

问题出在 Java Web Start 应用程序上。

我将其添加到 .jnlp 文件中并希望它能够工作......但事实并非如此! :(

  <property name="http.proxyHost" value="127.0.0.1"/>
  <property name="http.proxyPort" value="8888"/>

应用程序会忽略它。

然后我尝试设置 Java 设置。

这也不起作用;(

Wireshark 无法解密 https/ssl 请求...

我可以做什么来解密请求或读取请求或让使用 java web start 应用程序 fiddler 代理。

为什么java不能使用系统代理? >.>


有不同的方法可以做到这一点:

1.) 您可以在java系统设置中设置代理。打开系统设置\Java\Java 控制面板\网络设置。在那里您可以配置代理...

2.) 验证代理是否配置正确的另一种方法是检查您的 java 程序:

private Proxy findProxy(URI uri)
{
     try
     {
          ProxySelector selector = ProxySelector.getDefault();
          List<Proxy> proxyList = selector.select(uri);
          if (proxyList.size() > 1)
               return proxyList.get(0);
     }
     catch (IllegalArgumentException e)
     {
     }
     return Proxy.NO_PROXY;
}

3.) 在程序中设置系统设置:

System.getProperties().put( "proxySet", "true" );
System.getProperties().put( "proxyHost", "myProxyMachineName" );
System.getProperties().put( "proxyPort", "85" );

如果您还需要身份验证,请使用(更多详细信息here http://www.javaworld.com/article/2077541/learn-java/java-tip-42--write-java-apps-that-work-with-proxy-based-firewalls.html)

URLConnection connection = url.openConnection();
String password = "username:password";
String encodedPassword = base64Encode( password );
connection.setRequestProperty( "Proxy-Authorization", encodedPassword );
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

强制 java web start 使用像 Fiddler 这样的代理而不接触代码 的相关文章

随机推荐