我希望我的应用程序通过代理服务器连接到互联网(以避免验证码)。我目前使用的代码是:
Properties props = System.getProperties();
props.put("http.proxyPort", proxyPort); //proxy port
props.put("http.proxyHost", proxyHost); //proxy host
props.put("http.proxySet", "true");
但是,此代码不成功。有什么建议吗?
答案 0 :(得分:2)
您可以尝试以下操作:
SocketAddress sa = new InetSocketAddress(proxy_host_name, proxy_port_address);
Proxy proxy = new Proxy(Proxy.Type.xxx, sa);
URLConnection con = new URL(url).openConnection(proxy);
答案 1 :(得分:0)
您可能正在使用某种“用户友好型网站代理”,例如http://newipnow.com或www.proxyultra.com。但是您需要使用真正的SOCKS proxy服务器。
我在公共代理列表中找到的免费服务器:
System.setProperty("http.proxyHost", "187.115.172.82");
System.setProperty("http.proxyPort", "8181");
无需设置http.proxySet
属性。
从好消息列表中选择一个服务器:Hide My Ass: Proxy List
答案 2 :(得分:0)
将参数放在命令行上或使用setProperty
。
java -Dhttp.proxyHost=proxy.host -Dhttp.proxyPort=3128 MainClass