Documentation ¶
Index ¶
- func FieldSpecs() docs.FieldSpecs
- func OptSetCloseChan(c <-chan struct{}) func(*Type)
- func OptSetHTTPTransport(transport *http.Transport) func(*Type)
- func OptSetLogger(log log.Modular) func(*Type)
- func OptSetManager(mgr types.Manager) func(*Type)
- func OptSetStats(stats metrics.Type) func(*Type)
- type Config
- type Type
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FieldSpecs ¶ added in v3.9.0
func FieldSpecs() docs.FieldSpecs
FieldSpecs returns a map of field specs for an HTTP type.
func OptSetCloseChan ¶
func OptSetCloseChan(c <-chan struct{}) func(*Type)
OptSetCloseChan sets a channel that when closed will interrupt any blocking calls within the client.
func OptSetHTTPTransport ¶
OptSetHTTPTransport sets the HTTP Transport to use. NOTE: This setting will override any configured TLS options.
func OptSetLogger ¶
OptSetLogger sets the logger to use.
func OptSetManager ¶
OptSetManager sets the manager to use.
func OptSetStats ¶
OptSetStats sets the metrics aggregator to use.
Types ¶
type Config ¶
type Config struct { URL string `json:"url" yaml:"url"` Verb string `json:"verb" yaml:"verb"` Headers map[string]string `json:"headers" yaml:"headers"` CopyResponseHeaders bool `json:"copy_response_headers" yaml:"copy_response_headers"` RateLimit string `json:"rate_limit" yaml:"rate_limit"` Timeout string `json:"timeout" yaml:"timeout"` Retry string `json:"retry_period" yaml:"retry_period"` MaxBackoff string `json:"max_retry_backoff" yaml:"max_retry_backoff"` NumRetries int `json:"retries" yaml:"retries"` BackoffOn []int `json:"backoff_on" yaml:"backoff_on"` DropOn []int `json:"drop_on" yaml:"drop_on"` SuccessfulOn []int `json:"successful_on" yaml:"successful_on"` TLS tls.Config `json:"tls" yaml:"tls"` auth.Config `json:",inline" yaml:",inline"` }
Config is a configuration struct for an HTTP client.
type Type ¶
type Type struct {
// contains filtered or unexported fields
}
Type is an output type that pushes messages to Type.
func (*Type) CreateRequest ¶
CreateRequest creates an HTTP request out of a single message.
func (*Type) Do ¶
Do attempts to create and perform an HTTP request from a message payload. This attempt may include retries, and if all retries fail an error is returned.
func (*Type) ParseResponse ¶
ParseResponse attempts to parse an HTTP response into a 2D slice of bytes.
func (*Type) Send ¶
Send attempts to send a message to an HTTP server, this attempt may include retries, and if all retries fail an error is returned. The message payload can be nil, in which case an empty body is sent. The response will be parsed back into a message, meaning mulitpart content handling is done for you.
If the response body is empty the message returned is nil.