Documentation
      ¶
    
    
  
    
  
    Index ¶
- Variables
 - func Get(options *types.Options, configuration *Configuration) (*retryablehttp.Client, error)
 - func GetHttpTimeout(opts *types.Options) time.Duration
 - func GetRawHTTP(options *types.Options) *rawhttp.Client
 - func Init(options *types.Options) error
 - func SendRawRequest(client *rawhttp.Client, opts *RawHttpRequestOpts) (*http.Response, error)
 - type Configuration
 - type ConnectionConfiguration
 - type RawHttpRequestOpts
 - type RedirectFlow
 - type WithCustomTimeout
 
Constants ¶
This section is empty.
Variables ¶
var ( // MaxResponseHeaderTimeout is the timeout for response headers // to be read from the server (this prevents infinite hang started by server if any) // Note: this will be overridden temporarily when using @timeout request annotation MaxResponseHeaderTimeout = time.Duration(10) * time.Second // HttpTimeoutMultiplier is the multiplier for the http timeout HttpTimeoutMultiplier = 3 )
Functions ¶
func Get ¶
func Get(options *types.Options, configuration *Configuration) (*retryablehttp.Client, error)
Get creates or gets a client for the protocol based on custom configuration
func GetHttpTimeout ¶
GetHttpTimeout returns the http timeout for the client
func GetRawHTTP ¶
GetRawHTTP returns the rawhttp request client
func SendRawRequest ¶
SendRawRequest sends a raw http request with the provided options and returns http response
Types ¶
type Configuration ¶
type Configuration struct {
	// Threads contains the threads for the client
	Threads int
	// MaxRedirects is the maximum number of redirects to follow
	MaxRedirects int
	// NoTimeout disables http request timeout for context based usage
	NoTimeout bool
	// DisableCookie disables cookie reuse for the http client (cookiejar impl)
	DisableCookie bool
	// FollowRedirects specifies the redirects flow
	RedirectFlow RedirectFlow
	// Connection defines custom connection configuration
	Connection *ConnectionConfiguration
	// ResponseHeaderTimeout is the timeout for response body to be read from the server
	ResponseHeaderTimeout time.Duration
}
    Configuration contains the custom configuration options for a client
func (*Configuration) HasStandardOptions ¶
func (c *Configuration) HasStandardOptions() bool
HasStandardOptions checks whether the configuration requires custom settings
func (*Configuration) Hash ¶
func (c *Configuration) Hash() string
Hash returns the hash of the configuration to allow client pooling
type ConnectionConfiguration ¶
type ConnectionConfiguration struct {
	// DisableKeepAlive of the connection
	DisableKeepAlive bool
	// contains filtered or unexported fields
}
    ConnectionConfiguration contains the custom configuration options for a connection
func (*ConnectionConfiguration) GetCookieJar ¶
func (cc *ConnectionConfiguration) GetCookieJar() *cookiejar.Jar
func (*ConnectionConfiguration) HasCookieJar ¶
func (cc *ConnectionConfiguration) HasCookieJar() bool
func (*ConnectionConfiguration) SetCookieJar ¶
func (cc *ConnectionConfiguration) SetCookieJar(cookiejar *cookiejar.Jar)
type RawHttpRequestOpts ¶
type RawHttpRequestOpts struct {
	// Method is the http method to use
	Method string
	// URL is the url to request
	URL string
	// Path is request path to use
	Path string
	// Headers is the headers to use
	Headers map[string][]string
	// Body is the body to use
	Body io.Reader
	// Options is more client related options
	Options *rawhttp.Options
}
    RawHttpRequestOpts is a configuration for raw http request
type RedirectFlow ¶
type RedirectFlow uint8
const ( DontFollowRedirect RedirectFlow = iota FollowSameHostRedirect FollowAllRedirect )
type WithCustomTimeout ¶
WithCustomTimeout is a configuration for custom timeout