A PerHost directs connections to a default Dialer unless the host name
requested matches one of a number of exceptions.bypassDialerbypassHosts[]stringbypassIPs[]net.IPbypassNetworks[]*net.IPNetbypassZones[]stringdefDialer AddFromString parses a string that contains comma-separated values
specifying hosts that should use the bypass proxy. Each value is either an
IP address, a CIDR range, a zone (*.example.com) or a host name
(localhost). A best effort is made to parse the string and errors are
ignored. AddHost specifies a host name that will use the bypass proxy. AddIP specifies an IP address that will use the bypass proxy. Note that
this will only take effect if a literal IP address is dialed. A connection
to a named host will never match an IP. AddNetwork specifies an IP range that will use the bypass proxy. Note that
this will only take effect if a literal IP address is dialed. A connection
to a named host will never match. AddZone specifies a DNS suffix that will use the bypass proxy. A zone of
"example.com" matches "example.com" and all of its subdomains. Dial connects to the address addr on the given network through either
defaultDialer or bypass. DialContext connects to the address addr on the given network through either
defaultDialer or bypass.(*PerHost) dialerForRequest(host string) Dialer
*PerHost : ContextDialer
*PerHost : Dialer
func NewPerHost(defaultDialer, bypass Dialer) *PerHost
Dial directly invokes net.Dial with the supplied parameters. DialContext instantiates a net.Dialer and invokes its DialContext receiver with the supplied parameters.
direct : ContextDialer
direct : Dialer
var Direct
envOnce looks up an environment variable (optionally by multiple
names) once. It mitigates expensive lookups on some platforms
(e.g. Windows).
(Borrowed from net/http/transport.go)names[]stringoncesync.Oncevalstring(*envOnce) Get() string(*envOnce) init() reset is used by tests
var allProxyEnv *envOnce
var noProxyEnv *envOnce
Package-Level Functions (total 8, in which 7 are exported)
Dial works like DialContext on net.Dialer but using a dialer returned by FromEnvironment.
The passed ctx is only used for returning the Conn, not the lifetime of the Conn.
Custom dialers (registered via RegisterDialerType) that do not implement ContextDialer
can leak a goroutine for as long as it takes the underlying Dialer implementation to timeout.
A Conn returned from a successful Dial after the context has been cancelled will be immediately closed.
FromEnvironment returns the dialer specified by the proxy-related
variables in the environment and makes underlying connections
directly.
FromEnvironmentUsing returns the dialer specify by the proxy-related
variables in the environment and makes underlying connections
using the provided forwarding Dialer (for instance, a *net.Dialer
with desired configuration).
FromURL returns a Dialer given a URL specification and an underlying
Dialer for it to make network requests.
NewPerHost returns a PerHost Dialer that directs connections to either
defaultDialer or bypass, depending on whether the connection matches one of
the configured rules.
RegisterDialerType takes a URL scheme and a function to generate Dialers from
a URL with that scheme and a forwarding Dialer. Registered schemes are used
by FromURL.
SOCKS5 returns a Dialer that makes SOCKSv5 connections to the given
address with an optional username and password.
See RFC 1928 and RFC 1929.
WARNING: this can leak a goroutine for as long as the underlying Dialer implementation takes to timeout
A Conn returned from a successful Dial after the context has been cancelled will be immediately closed.
Package-Level Variables (total 4, in which 1 is exported)
Direct implements Dialer by making network connections directly using net.Dial or net.DialContext.
proxySchemes is a map from URL schemes to a function that creates a Dialer
from a URL with such a scheme.
The pages are generated with Goldsv0.6.7. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds.