See Also: ProxySelector Members
Selects the proxy server to use, if any, when connecting to a given URL.
The default proxy selector is configured by system properties.
Hostname patterns | |||
---|---|---|---|
URL scheme | property name | description | default |
ftp | ftp.nonProxyHosts | Hostname pattern for FTP servers to connect to directly (without a proxy). | |
http | http.nonProxyHosts | Hostname pattern for HTTP servers to connect to directly (without a proxy). | |
https | https.nonProxyHosts | Hostname pattern for HTTPS servers to connect to directly (without a proxy). | |
NoType:java/net/Proxy$Type;Href=../../../reference/java/net/Proxy.Type.html#HTTP | |||
URL scheme | property name | description | default |
ftp | ftp.proxyHost | Hostname of the HTTP proxy server used for FTP requests. | |
ftp.proxyPort | Port number of the HTTP proxy server used for FTP requests. | 80 | |
http | http.proxyHost | Hostname of the HTTP proxy server used for HTTP requests. | |
http.proxyPort | Port number of the HTTP proxy server used for HTTP requests. | 80 | |
https | https.proxyHost | Hostname of the HTTP proxy server used for HTTPS requests. | |
https.proxyPort | Port number of the HTTP proxy server used for HTTPS requests. | 443 | |
ftp, http or https | proxyHost | Hostname of the HTTP proxy server used for FTP, HTTP and HTTPS requests. | |
proxyPort | Port number of the HTTP proxy server. | 80 for FTP and HTTP
443 for HTTPS | |
NoType:java/net/Proxy$Type;Href=../../../reference/java/net/Proxy.Type.html#SOCKS | |||
URL scheme | property name | description | default |
ftp, http, https or socket | socksProxyHost | Hostname of the
SOCKS proxy server used for FTP, HTTP, HTTPS and raw sockets. Raw socket URLs are of the form socket://host:port | |
socksProxyPort | Port number of the SOCKS proxy server. | 1080 |
Hostname patterns specify which hosts should be connected to directly, ignoring any other proxy system properties. If the URL's host matches the corresponding hostname pattern, Proxy.NoProxy is returned.
The format of a hostname pattern is a list of hostnames that are separated by | and that use * as a wildcard. For example, setting the http.nonProxyHosts property to *.android.com|*.kernel.org will cause requests to http://developer.android.com to be made without a proxy.
The default proxy selector always returns exactly one proxy. If no proxy is applicable, Proxy.NoProxy is returned. If multiple proxies are applicable, such as when both the proxyHost and socksProxyHost system properties are set, the result is the property listed earliest in the table above.
To request a URL without involving the system proxy selector, explicitly specify a proxy or Proxy.NoProxy using URL.OpenConnection(Proxy).
Use ProxySelector.Default to install a custom proxy selector.