我正在开发一个发出 HTTP 请求的 Java 应用程序,而我一半的开发时间都在代理之后。所以我的代码中有以下块:
if (BEHIND_PROXY) {
java.util.Properties systemProperties = System.getProperties();
systemProperties.setProperty("http.proxyHost", PROXY_HOST);
systemProperties.setProperty("http.proxyPort", PROXY_PORT);
}
这个想法是我BEHIND_PROXY
根据我所在的位置更改 的值。我今天在工作,不在代理后面,忘记设置BEHIND_PROXY
为false
. 但是,连接仍然成功,我的应用程序收到了它请求的数据。这怎么可能?是否有内置的东西,如果无法访问代理服务器,它只是再次尝试但在此重试时绕过代理?
第二个问题,我一直在尝试查找系统属性的完整列表。我发现了很多类似THIS的帖子,但没有一个列出http.proxyHost
或http.proxyPort
,这让我觉得它们显然不是很完整。我是否以某种方式搜索错误?这些http.x
属性是否属于这些其他列表?有没有更完整的清单?