Most visited

Recently visited

Added in API level 1

ProxySelector

public abstract class ProxySelector
extends Object

java.lang.Object
   ↳ java.net.ProxySelector


选择连接到URL引用的网络资源时使用的代理服务器(如果有)。 代理选择器是此类的具体子类,并通过调用setDefault方法进行注册。 通过调用getDefault方法可以检索当前注册的代理选择器。

例如,在注册代理选择器时,URLConnection类的子类应为每个URL请求调用select方法,以便代理选择器可以决定是否应使用直接连接或代理连接。 select方法使用首选连接方法返回集合上的迭代器。

如果连接不能建立到代理(PROXY或SOCKS)服务器,则调用方应该调用代理选择的 connectFailed方法,该代理服务器不可用通知代理选择。

默认的代理选择器会强制执行与代理设置相关的 set of System Properties

Summary

Public constructors

ProxySelector()

Public methods

abstract void connectFailed(URI uri, SocketAddress sa, IOException ioe)

被调用以指示无法建立到代理/袜子服务器的连接。

static ProxySelector getDefault()

获取系统范围的代理选择器。

abstract List<Proxy> select(URI uri)

根据协议选择所有可用的代理,以访问资源和目标地址以访问资源。

static void setDefault(ProxySelector ps)

设置(或取消设置)系统范围的代理选择器。

Inherited methods

From class java.lang.Object

Public constructors

ProxySelector

Added in API level 1
ProxySelector ()

Public methods

connectFailed

Added in API level 1
void connectFailed (URI uri, 
                SocketAddress sa, 
                IOException ioe)

被调用以指示无法建立到代理/袜子服务器的连接。 此方法的实现可以使用尝试连接时捕获的地址和IOException临时移除代理或重新排序由select(URI)返回的代理序列。

Parameters
uri URI: The URI that the proxy at sa failed to serve.
sa SocketAddress: The socket address of the proxy/SOCKS server
ioe IOException: The I/O exception thrown when the connect failed.
Throws
IllegalArgumentException if either argument is null

getDefault

Added in API level 1
ProxySelector getDefault ()

获取系统范围的代理选择器。

Returns
ProxySelector the system-wide ProxySelector
Throws
SecurityException If a security manager has been installed and it denies NetPermission("getProxySelector")

也可以看看:

select

Added in API level 1
List<Proxy> select (URI uri)

根据协议选择所有可用的代理,以访问资源和目标地址以访问资源。 URI的格式定义如下:

  • http URI for http connections
  • https URI for https connections
  • ftp URI for ftp connections
  • socket://host:port
    for tcp client sockets connections

Parameters
uri URI: The URI that a connection is required to
Returns
List<Proxy> a List of Proxies. Each element in the the List is of type Proxy; when no proxy is available, the list will contain one element of type Proxy that represents a direct connection.
Throws
IllegalArgumentException if the argument is null

setDefault

Added in API level 1
void setDefault (ProxySelector ps)

设置(或取消设置)系统范围的代理选择器。 注意:非标准协议处理程序可能会忽略此设置。

Parameters
ps ProxySelector: The HTTP proxy selector, or null to unset the proxy selector.
Throws
SecurityException If a security manager has been installed and it denies NetPermission("setProxySelector")

也可以看看:

Hooray!