我正在寻找如何在 Windows 下使用 Java 获取系统代理信息的方法,但我只找到了一种方法。但这对我不起作用。
public static void main(String[] args) throws Throwable {
System.setProperty("java.net.useSystemProxies", "true");
System.out.println("detecting proxies");
List<Proxy> pl = ProxySelector.getDefault().select(new URI("http://ihned.cz/"));
for (Proxy p : pl)
System.out.println(p);
Proxy p = null;
if (pl.size() > 0) //uses first one
p = pl.get(0);
System.out.println(p.address());
System.out.println("Done");
}
当我运行该程序时,我得到:
detecting proxies
DIRECT
null
Done
Java 意味着我直接位于互联网上。但这是错误的。我在代理后面。我无法找到适合我的计算机的解决方案。
正如我们在评论中讨论的,代理设置仅适用于您使用的某些浏览器。
如果您希望 Java 使用相同的设置,您需要手动将其放入 java 网络设置中(检查this http://www.java.com/en/download/help/proxy_setup.xml网页了解详情)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)