Documentation ¶
Index ¶
- func NewClient(options ...Option) (*http.Client, error)
- type ClientBuilder
- type DynamicClientCertificateSource
- type DynamicRootCAsSource
- type Option
- func AuthProxy(username string, groups []string, extra map[string][]string) Option
- func AutoDeflate(enable bool) Option
- func BasicAuth(username, password string) Option
- func BearerAuth(bearer string) Option
- func BearerAuthWithRefresh(bearer string, tokenFile string) Option
- func Debug(log logr.Logger) Option
- func DefaultClient() Option
- func DefaultTransport() Option
- func DialContext(fn func(ctx context.Context, network, addr string) (net.Conn, error)) Option
- func DisableCompression(disable bool) Option
- func EnableHttp2(enabled bool) Option
- func EnableOption(enable bool, option Option) Option
- func ManualClient(client *http.Client) Option
- func ManualCloneRequest() Option
- func ManualTransport(transport *http.Transport) Option
- func MaxIdleConnsPerHost(maxIdleConnsPerHost int) Option
- func Proxy(proxy func(*http.Request) (*url.URL, error)) Option
- func RoundTripper(fn func(http.RoundTripper) (http.RoundTripper, error)) Option
- func TLSClientCertificate(fn func(*tls.CertificateRequestInfo) (*tls.Certificate, error)) Option
- func TLSDynamicClientCertificate(fn DynamicClientCertificateSource) Option
- func TLSDynamicRootCAs(fn DynamicRootCAsSource) Option
- func TLSEnableSni() Option
- func TLSInsecureSkipVerify(insecureSkipVerify bool) Option
- func TLSRenegotation(renegotiationSupport tls.RenegotiationSupport) Option
- func TLSRootCAs(rootCAs *x509.CertPool) Option
- func TLSTime(time func() time.Time) Option
- func Timeout(timeout time.Duration) Option
- func UserAgent(userAgent string) Option
- type OptionState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ClientBuilder ¶
type ClientBuilder []Option
func (ClientBuilder) Add ¶
func (cb ClientBuilder) Add(options ...Option) ClientBuilder
type DynamicClientCertificateSource ¶
type DynamicClientCertificateSource func(state *OptionState) dynamic_clientcert.DynamicClientCertificate
func StartDynamicFileClientCertificateSource ¶
func StartDynamicFileClientCertificateSource(ctx context.Context, log logr.Logger, certFile, keyFile string) (DynamicClientCertificateSource, context.CancelFunc)
type DynamicRootCAsSource ¶
type DynamicRootCAsSource func(state *OptionState) dynamic_rootca.DynamicRootCAs
func StartDynamicFileRootCAsSource ¶
func StartDynamicFileRootCAsSource(ctx context.Context, log logr.Logger, rootCAFile string) (DynamicRootCAsSource, context.CancelFunc)
type Option ¶
type Option func(state *OptionState) error
func AutoDeflate ¶
func BearerAuth ¶
func BearerAuthWithRefresh ¶
func DefaultClient ¶
func DefaultClient() Option
func DefaultTransport ¶
func DefaultTransport() Option
func DialContext ¶
func DisableCompression ¶
func EnableHttp2 ¶
func EnableOption ¶
func ManualClient ¶
Copys all the fields of the provided client, except for the Transport, which is skipped.
func ManualCloneRequest ¶
func ManualCloneRequest() Option
func ManualTransport ¶
func MaxIdleConnsPerHost ¶
func RoundTripper ¶
func RoundTripper(fn func(http.RoundTripper) (http.RoundTripper, error)) Option
func TLSClientCertificate ¶
func TLSClientCertificate(fn func(*tls.CertificateRequestInfo) (*tls.Certificate, error)) Option
func TLSDynamicClientCertificate ¶
func TLSDynamicClientCertificate(fn DynamicClientCertificateSource) Option
func TLSDynamicRootCAs ¶
func TLSDynamicRootCAs(fn DynamicRootCAsSource) Option
func TLSEnableSni ¶
func TLSEnableSni() Option
func TLSInsecureSkipVerify ¶
func TLSRenegotation ¶
func TLSRenegotation(renegotiationSupport tls.RenegotiationSupport) Option
func TLSRootCAs ¶
type OptionState ¶
type OptionState struct { Dynamic *roundtrippers.DynamicTransportTripper Client *http.Client }
Click to show internal directories.
Click to hide internal directories.