我制作了一个访问网页的 Java 小程序。我需要它通过 SOCKS 代理连接到网站我已经尝试将此代码放在我的程序初始化的位置:
System.setProperty("socksProxyHost", "66.85.144.228");
System.setProperty("socksProxyPort", "1080");
但似乎什么也没发生,它只是使用我的正常 IP 地址?
最佳答案
您的属性可能是 being set too-late ,在相关代码初始化时已读取它们之后,但您也可能会遇到 security restrictions of a sandboxed applet 。您的小程序是否经过签名,或者是否在沙盒中运行?
如果这是一个 Java 应用程序而不是小程序,您可以通过在 JVM 启动时设置这些来测试它,例如“-DsocksProxyHost=66.85.144.228 -DsocksProxyPort=1080”
。
由于您使用的是小程序,因此您可以设置的系统属性受到限制。您可以set deployment parameters :
<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300">
<PARAM name="java_arguments" value="-DsocksProxyHost=66.85.144.228">
</APPLET>
...但是 socksProxyHost
当然不在 list of trusted/secure properties 中,因此您的小程序需要完全签名才能运行。
关于java - 如何在 java applet 中连接到 SOCKS 代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30388588/