System.getProperty("http.nonProxyHosts")得到的是系统ie代理的配置吗
时间: 2024-05-27 12:09:47 浏览: 156
是的,`System.getProperty("http.nonProxyHosts")`返回的是系统的代理配置中设置的不使用代理的主机列表。这个列表包括那些不需要使用代理来访问的主机名或IP地址,可以用逗号分隔多个主机名或IP地址。如果这个列表为空或者未设置,则表示所有主机都需要使用代理。这个属性是从系统的配置文件中读取的,通常是从`/etc/system.properties`或者`java.home/lib/net.properties`文件中读取。如果你想要了解更多关于Java网络代理的信息,可以参考Java官方文档中的相关章节。
相关问题
Java不用System.getProperty("http.nonProxyHosts")怎么获取ie代理配置的忽略地址列表
在Java中,可以使用以下方式获取IE代理配置的忽略地址列表:
1. 使用Windows注册表读取IE代理设置,具体路径为:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyOverride。
2. 使用JNA库调用Windows API获取代理配置信息,具体函数为WinHttpDetectAutoProxyConfigUrl、WinHttpGetDefaultProxyConfiguration和WinHttpGetIEProxyConfigForCurrentUser。
这两种方式都可以获取IE代理配置的忽略地址列表。但是需要注意的是,第一种方式只适用于Windows系统,而第二种方式也只适用于Windows系统,并且需要使用JNA库。如果需要在其他操作系统下获取代理配置信息,可能需要使用其他方法。
windows有ie代理配置的例外列表,System.getProperty("http.nonProxyHosts")是null
`System.getProperty("http.nonProxyHosts")` 是 Java 的系统属性,用于设置不使用代理服务器的主机列表。它与 Windows 的 IE 代理配置的例外列表是不同的概念。
如果你想要获取 Windows 的 IE 代理配置的例外列表,你可以通过以下步骤进行:
1. 打开 Internet Explorer 浏览器
2. 点击菜单栏的“工具”选项
3. 选择“Internet 选项”
4. 在弹出的“Internet 选项”对话框中,点击“连接”选项卡
5. 点击“局域网设置”按钮
6. 在弹出的“局域网设置”对话框中,找到“代理服务器”部分下的“高级”按钮,并点击它
7. 在弹出的“高级”对话框中,你将会看到“在以下情况下不使用代理服务器”这一部分,里面列举了例外列表
如果你想要在 Java 中使用这个例外列表,可以使用 `java.net.ProxySelector` 类进行设置。例如:
```
String proxyHost = "your.proxy.host";
int proxyPort = 8080;
String nonProxyHosts = "<local>|localhost|127.*|[::1]";
System.setProperty("http.proxyHost", proxyHost);
System.setProperty("http.proxyPort", String.valueOf(proxyPort));
System.setProperty("https.proxyHost", proxyHost);
System.setProperty("https.proxyPort", String.valueOf(proxyPort));
System.setProperty("http.nonProxyHosts", nonProxyHosts);
System.setProperty("https.nonProxyHosts", nonProxyHosts);
ProxySelector.setDefault(new MyProxySelector());
```
这里的 `MyProxySelector` 是自定义的 `ProxySelector` 类,用于根据例外列表判断是否使用代理服务器。
阅读全文
相关推荐













