W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
java.lang.Object
|---java.net.ProxySelector
public abstract class ProxySelector
extends Object
選擇連接到 URL 引用的網(wǎng)絡(luò)資源時(shí)要使用的代理服務(wù)器(如果有)。 代理選擇器是此類的具體子類,并通過(guò)調(diào)用 setDefault 方法進(jìn)行注冊(cè)。 當(dāng)前注冊(cè)的代理選擇器可以通過(guò)調(diào)用 getDefault 方法來(lái)檢索。
例如,當(dāng)代理選擇器注冊(cè)時(shí),URLConnection 類的子類應(yīng)該為每個(gè) URL 請(qǐng)求調(diào)用 select 方法,以便代理選擇器可以決定是否應(yīng)該使用直接連接或代理連接。 select 方法使用首選連接方法返回集合上的迭代器。
如果無(wú)法與代理(PROXY 或 SOCKS)服務(wù)器建立連接,則調(diào)用者應(yīng)調(diào)用代理選擇器的 connectFailed 方法來(lái)通知代理選擇器代理服務(wù)器不可用。
默認(rèn)代理選擇器確實(shí)強(qiáng)制執(zhí)行一組與代理設(shè)置相關(guān)的系統(tǒng)屬性。
構(gòu)造函數(shù) | 描述 |
---|---|
ProxySelector() |
修飾符和類型 | 方法 | 描述 |
---|---|---|
abstract void | connectFailed(URI uri, SocketAddress sa, IOException ioe) | 調(diào)用以指示無(wú)法建立到proxy/socks服務(wù)器的連接。 |
static ProxySelector | getDefault() | 獲取系統(tǒng)范圍的代理選擇器。 |
abstract ListProxy | select(URI uri) | 根據(jù)協(xié)議選擇所有適用的代理來(lái)訪問(wèn)資源,并選擇目標(biāo)地址來(lái)訪問(wèn)資源。 |
static void | setDefault(ProxySelector ps) | 設(shè)置(或取消設(shè)置)系統(tǒng)范圍的代理選擇器。 |
從類 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
public ProxySelector()
public static ProxySelector getDefault()
獲取系統(tǒng)范圍的代理選擇器。
返回:
系統(tǒng)范圍的 ProxySelector
Throws:
Throw名稱 | Throw描述 |
---|---|
SecurityException | 如果已安裝安全管理器并且它拒絕 NetPermission("getProxySelector") |
public static void setDefault(ProxySelector ps)
設(shè)置(或取消設(shè)置)系統(tǒng)范圍的代理選擇器。 注意:非標(biāo)準(zhǔn)協(xié)議處理程序可能會(huì)忽略此設(shè)置。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
ps | HTTP 代理選擇器,或 null 以取消設(shè)置代理選擇器。 |
Throws:
Throw名稱 | Throw描述 |
---|---|
SecurityException | 如果已安裝安全管理器并且它拒絕 NetPermission("setProxySelector") |
public abstract ListProxy select(URI uri)
根據(jù)協(xié)議選擇所有適用的代理來(lái)訪問(wèn)資源,并選擇目標(biāo)地址來(lái)訪問(wèn)資源。 URI 的格式定義如下:
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
uri | 連接所需的 URI |
返回:
代理列表。 List 中的每個(gè)元素都是 Proxy 類型; 當(dāng)沒(méi)有可用的代理時(shí),列表將包含一個(gè)代表直接連接的代理類型元素。
Throws:
Throw名稱 | Throw描述 |
---|---|
IllegalArgumentException | 如果參數(shù)為空 |
public abstract void connectFailed(URI uri, SocketAddress sa, IOException ioe)
調(diào)用以指示無(wú)法建立到proxy/socks服務(wù)器的連接。 此方法的實(shí)現(xiàn)可以使用地址和嘗試連接時(shí)捕獲的 IOException 臨時(shí)刪除代理或重新排序 select(java.net.URI) 返回的代理序列。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
uri | sa 上的代理未能提供服務(wù)的 URI。 |
sa | proxy/SOCKS 服務(wù)器的套接字地址 |
ioe | 連接失敗時(shí)拋出的 I/O 異常。 |
Throws:
Throw名稱 | Throw描述 |
---|---|
IllegalArgumentException | 如果任一參數(shù)為空 |
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: