java - 如何在 java applet 中连接到 SOCKS 代理

标签 java proxy socks

我制作了一个访问网页的 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/

相关文章:

java - 如何使用 URLConnection 超时

perl - 无法通过Perl中的Sock代理连接到主机

c++ - 排列数据包中的字节

java - 在运行时测试/更改 java 源

java - 如何使用 lombok 在 @NonNull 异常中抛出我自己的自定义消息?

c# - EF 代理和复杂的数据结构

对于远程客户端,通过 Fiddler 代理 HTTPS 流量失败?

java - 在自定义线程类中执行可运行参数

java - 如何对存储在 JTextPanes(JList 中的单元格)中的文本进行自动换行

c# - 如何从 Windows Phone 应用程序发送带有代理地址的 HttpWebRequest