新聞中心
ProxySelector

java.lang.Object
|---java.net.ProxySelector
public abstract class ProxySelector
extends Object選擇連接到 URL 引用的網(wǎng)絡(luò)資源時(shí)要使用的代理服務(wù)器(如果有)。 代理選擇器是此類的具體子類,并通過調(diào)用 setDefault 方法進(jìn)行注冊(cè)。 當(dāng)前注冊(cè)的代理選擇器可以通過調(diào)用 getDefault 方法來檢索。
例如,當(dāng)代理選擇器注冊(cè)時(shí),URLConnection 類的子類應(yīng)該為每個(gè) URL 請(qǐng)求調(diào)用 select 方法,以便代理選擇器可以決定是否應(yīng)該使用直接連接或代理連接。 select 方法使用首選連接方法返回集合上的迭代器。
如果無法與代理(PROXY 或 SOCKS)服務(wù)器建立連接,則調(diào)用者應(yīng)調(diào)用代理選擇器的 connectFailed 方法來通知代理選擇器代理服務(wù)器不可用。
默認(rèn)代理選擇器確實(shí)強(qiáng)制執(zhí)行一組與代理設(shè)置相關(guān)的系統(tǒng)屬性。
構(gòu)造函數(shù)摘要
| 構(gòu)造函數(shù) | 描述 |
|---|---|
| ProxySelector() |
方法總結(jié)
| 修飾符和類型 | 方法 | 描述 |
|---|---|---|
| abstract void | connectFailed(URI uri, SocketAddress sa, IOException ioe) | 調(diào)用以指示無法建立到proxy/socks服務(wù)器的連接。 |
| static ProxySelector | getDefault() | 獲取系統(tǒng)范圍的代理選擇器。 |
| abstract ListProxy | select(URI uri) | 根據(jù)協(xié)議選擇所有適用的代理來訪問資源,并選擇目標(biāo)地址來訪問資源。 |
| static void | setDefault(ProxySelector ps) | 設(shè)置(或取消設(shè)置)系統(tǒng)范圍的代理選擇器。 |
| 從類 java.lang.Object 繼承的方法 |
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
構(gòu)造函數(shù)詳細(xì)信息
ProxySelector
public ProxySelector()
方法詳情
getDefault
public static ProxySelector getDefault()
獲取系統(tǒng)范圍的代理選擇器。
返回:
系統(tǒng)范圍的 ProxySelector
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| SecurityException | 如果已安裝安全管理器并且它拒絕 NetPermission("getProxySelector") |
setDefault
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") |
select
public abstract ListProxy select(URI uri)
根據(jù)協(xié)議選擇所有適用的代理來訪問資源,并選擇目標(biāo)地址來訪問資源。 URI 的格式定義如下:
- http 連接的 http URI
- https 連接的 https URI
- socket://host:port 用于 tcp 客戶端套接字連接
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| uri | 連接所需的 URI |
返回:
代理列表。 List 中的每個(gè)元素都是 Proxy 類型; 當(dāng)沒有可用的代理時(shí),列表將包含一個(gè)代表直接連接的代理類型元素。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IllegalArgumentException | 如果參數(shù)為空 |
connectFailed
public abstract void connectFailed(URI uri, SocketAddress sa, IOException ioe)
調(diào)用以指示無法建立到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ù)為空 |
本文標(biāo)題:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OS ProxySelector
文章URL:http://m.fisionsoft.com.cn/article/ccsceeg.html


咨詢
建站咨詢
