ProxyConfig 物件
mode
字串 (選用) - Proxy 模式。應為direct
、auto_detect
、pac_script
、fixed_servers
或system
其中之一。如果指定了pacScript
選項,則預設為pac_script
Proxy 模式,否則預設為fixed_servers
。direct
- 在 direct 模式下,所有連線都會直接建立,不涉及任何 Proxy。auto_detect
- 在 auto_detect 模式下,Proxy 設定由可在 http://wpad/wpad.dat 下載的 PAC 腳本決定。pac_script
- 在 pac_script 模式下,Proxy 設定由從pacScript
中指定的 URL 擷取的 PAC 腳本決定。如果指定了pacScript
,這會是預設模式。fixed_servers
- 在 fixed_servers 模式下,Proxy 設定在proxyRules
中指定。如果指定了proxyRules
,這會是預設模式。system
- 在 system 模式下,Proxy 設定取自作業系統。請注意,系統模式與未設定 Proxy 設定不同。在後者的情況下,只有在沒有命令列選項影響 Proxy 設定時,Electron 才會回復到系統設定。
pacScript
字串 (選用) - 與 PAC 檔案相關聯的 URL。proxyRules
字串 (選用) - 指示要使用哪個 Proxy 的規則。proxyBypassRules
字串 (選用) - 指示哪些 URL 應略過 Proxy 設定的規則。
當 mode
未指定,且同時提供 pacScript
和 proxyRules
時,proxyRules
選項將被忽略,並應用 pacScript
設定。
proxyRules
必須遵循以下規則
proxyRules = schemeProxies[";"<schemeProxies>]
schemeProxies = [<urlScheme>"="]<proxyURIList>
urlScheme = "http" | "https" | "ftp" | "socks"
proxyURIList = <proxyURL>[","<proxyURIList>]
proxyURL = [<proxyScheme>"://"]<proxyHost>[":"<proxyPort>]
例如
http=foopy:80;ftp=foopy2
- 對於http://
URL 使用 HTTP Proxyfoopy:80
,對於ftp://
URL 使用 HTTP Proxyfoopy2:80
。foopy:80
- 對於所有 URL 使用 HTTP Proxyfoopy:80
。foopy:80,bar,direct://
- 對於所有 URL 使用 HTTP Proxyfoopy:80
,如果foopy:80
不可用,則故障轉移到bar
,然後不使用任何 Proxy。socks4://foopy
- 對於所有 URL 使用 SOCKS v4 Proxyfoopy:1080
。http=foopy,socks5://bar.com
- 對於 http URL 使用 HTTP Proxyfoopy
,如果foopy
不可用,則故障轉移到 SOCKS5 Proxybar.com
。http=foopy,direct://
- 對於 http URL 使用 HTTP Proxyfoopy
,如果foopy
不可用,則不使用任何 Proxy。http=foopy;socks=foopy2
- 對於 http URL 使用 HTTP Proxyfoopy
,對於所有其他 URL 使用socks4://foopy2
。
proxyBypassRules
是以逗號分隔的規則清單,如下所述
-
[ URL_SCHEME "://" ] HOSTNAME_PATTERN [ ":" <port> ]
比對符合模式 HOSTNAME_PATTERN 的所有主機名稱。
範例: "foobar.com", "*foobar.com", "*.foobar.com", "*foobar.com:99", "https://x.\*.y.com:99"
-
"." HOSTNAME_SUFFIX_PATTERN [ ":" PORT ]
比對特定的網域後綴。
範例: ".google.com", ".com", "http://.google.com"
-
[ SCHEME "://" ] IP_LITERAL [ ":" PORT ]
比對為 IP 位址常值的 URL。
範例: "127.0.1", "[0:0::1]", "[::1]", "http://[::1]:99"
-
IP_LITERAL "/" PREFIX_LENGTH_IN_BITS
比對任何 URL,該 URL 是位於指定範圍內的 IP 常值。IP 範圍使用 CIDR 表示法指定。
範例: "192.168.1.1/16", "fefe:13::abc/33"。
-
<local>
比對本機位址。
<local>
的含義是主機是否符合以下其中之一: "127.0.0.1"、"::1"、"localhost"。