pub struct NoProxy { /* private fields */ }Expand description
A configuration for filtering out requests that shouldn’t be proxied
Implementations§
source§impl NoProxy
impl NoProxy
sourcepub fn from_env() -> Option<NoProxy>
pub fn from_env() -> Option<NoProxy>
Returns a new no-proxy configuration based on environment variables (or None if no variables are set)
see self::NoProxy::from_string() for the string format
sourcepub fn from_string(no_proxy_list: &str) -> Option<Self>
pub fn from_string(no_proxy_list: &str) -> Option<Self>
Returns a new no-proxy configuration based on a no_proxy string (or None if no variables
are set)
The rules are as follows:
- The environment variable
NO_PROXYis checked, if it is not set,no_proxyis checked - If neither environment variable is set,
Noneis returned - Entries are expected to be comma-separated (whitespace between entries is ignored)
- IP addresses (both IPv4 and IPv6) are allowed, as are optional subnet masks (by adding /size,
for example “
192.168.1.0/24”). - An entry “
*” matches all hostnames (this is the only wildcard allowed) - Any other entry is considered a domain name (and may contain a leading dot, for example
google.comand.google.comare equivalent) and would match both that domain AND all subdomains.
For example, if "NO_PROXY=google.com, 192.168.1.0/24" was set, all of the following would match
(and therefore would bypass the proxy):
http://google.com/http://www.google.com/http://192.168.1.42/
The URL http://notgoogle.com/ would not match.