ProxyConfig Object
mode
string (optional) - The proxy mode. Should be one ofdirect
,auto_detect
,pac_script
,fixed_servers
orsystem
. Defaults topac_script
proxy mode ifpacScript
option is specified otherwise defaults tofixed_servers
.direct
- In direct mode all connections are created directly, without any proxy involved.auto_detect
- In auto_detect mode the proxy configuration is determined by a PAC script that can be downloaded at http://wpad/wpad.dat.pac_script
- In pac_script mode the proxy configuration is determined by a PAC script that is retrieved from the URL specified in thepacScript
. This is the default mode ifpacScript
is specified.fixed_servers
- In fixed_servers mode the proxy configuration is specified inproxyRules
. This is the default mode ifproxyRules
is specified.system
- In system mode the proxy configuration is taken from the operating system. 请注意,系统模式不同于设置无代理配置。 In the latter case, Electron falls back to the system settings only if no command-line options influence the proxy configuration.
pacScript
string (optional) - The URL associated with the PAC file.proxyRules
string (optional) - Rules indicating which proxies to use.proxyBypassRules
string (optional) - Rules indicating which URLs should bypass the proxy settings.
When mode
is unspecified, pacScript
and proxyRules
are provided together, the proxyRules
option is ignored and pacScript
configuration is applied.
The proxyRules
has to follow the rules below:
proxyRules = schemeProxies[";"<schemeProxies>]
schemeProxies = [<urlScheme>"="]<proxyURIList>
urlScheme = "http" | "https" | "ftp" | "socks"
proxyURIList = <proxyURL>[","<proxyURIList>]
proxyURL = [<proxyScheme>"://"]<proxyHost>[":"<proxyPort>]
例如:
http=foopy:80;ftp=foopy2
- Use HTTP proxyfoopy:80
forhttp://
URLs, and HTTP proxyfoopy2:80
forftp://
URLs.foopy:80
- Use HTTP proxyfoopy:80
for all URLs.foopy:80,bar,direct://
- Use HTTP proxyfoopy:80
for all URLs, failing over tobar
iffoopy:80
is unavailable, and after that using no proxy.socks4://foopy
- Use SOCKS v4 proxyfoopy:1080
for all URLs.http=foopy,socks5://bar.com
- Use HTTP proxyfoopy
for http URLs, and fail over to the SOCKS5 proxybar.com
iffoopy
is unavailable.http=foopy,direct://
- Use HTTP proxyfoopy
for http URLs, and use no proxy iffoopy
is unavailable.http=foopy;socks=foopy2
- Use HTTP proxyfoopy
for http URLs, and usesocks4://foopy2
for all other URLs.
The proxyBypassRules
is a comma separated list of rules described below:
-
[ URL_SCHEME "://" ] HOSTNAME_PATTERN [ ":" <port> ]
与 HOSTNAME_PATTERN 模式匹配 的所有主机名。
Examples: "foobar.com", "*foobar.com", "*.foobar.com", "*foobar.com:99", "https://x.\\*.y.com:99"
-
"." HOSTNAME_SUFFIX_PATTERN [ ":" PORT ]
匹配特定域名后缀。
Examples: ".google.com", ".com", "http://.google.com"
-
[ SCHEME "://" ] IP_LITERAL [ ":" PORT ]
匹配 IP 地址文本的 url。
Examples: "127.0.1", "[0:0::1]", "[::1]", "http://[::1]:99"
-
IP_LITERAL "/" PREFIX_LENGTH_IN_BITS
Match any URL that is to an IP literal that falls between the given range. IP范围使用指定的CIDR。
Examples: "192.168.1.1/16", "fefe:13::abc/33".
-
<local>
匹配本地地址。 The meaning of
<local>
is whether the host matches one of: "127.0.0.1", "::1", "localhost".