Documentation ¶
Overview ¶
Package client provides some http helpers to create http clients and executors
Index ¶
- Constants
- Variables
- func DefaultHTTPStatusHandler(_ context.Context, resp *http.Response) (*http.Response, error)
- func ErrorHTTPStatusHandler(ctx context.Context, resp *http.Response) (*http.Response, error)
- func NewHTTPClient(_ context.Context) *http.Client
- func NoOpHTTPStatusHandler(_ context.Context, resp *http.Response) (*http.Response, error)
- type HTTPClientFactory
- type HTTPRequestExecutor
- type HTTPResponseError
- type HTTPStatusHandler
- type NamedHTTPResponseError
Constants ¶
const Namespace = "github.com/davron112/lura/http"
Namespace to be used in extra config
Variables ¶
var ErrInvalidStatusCode = errors.New("invalid status code")
ErrInvalidStatusCode is the error returned by the http proxy when the received status code is not a 200 nor a 201
Functions ¶
func DefaultHTTPStatusHandler ¶
DefaultHTTPStatusHandler is the default implementation of HTTPStatusHandler
func ErrorHTTPStatusHandler ¶
ErrorHTTPStatusHandler is a HTTPStatusHandler that returns the status code as part of the error details
func NewHTTPClient ¶
NewHTTPClient just returns the http default client
Types ¶
type HTTPClientFactory ¶
HTTPClientFactory creates http clients based with the received context
type HTTPRequestExecutor ¶
HTTPRequestExecutor defines the interface of the request executor for the HTTP transport protocol
func DefaultHTTPRequestExecutor ¶
func DefaultHTTPRequestExecutor(clientFactory HTTPClientFactory) HTTPRequestExecutor
DefaultHTTPRequestExecutor creates a HTTPRequestExecutor with the received HTTPClientFactory
type HTTPResponseError ¶
type HTTPResponseError struct { Code int `json:"http_status_code"` Msg string `json:"http_body,omitempty"` Enc string `json:"http_body_encoding,omitempty"` }
HTTPResponseError is the error to be returned by the ErrorHTTPStatusHandler
func (HTTPResponseError) Encoding ¶ added in v2.6.1
func (r HTTPResponseError) Encoding() string
Encoding returns the content type returned by the backend
func (HTTPResponseError) Error ¶
func (r HTTPResponseError) Error() string
Error returns the error message
func (HTTPResponseError) StatusCode ¶
func (r HTTPResponseError) StatusCode() int
StatusCode returns the status code returned by the backend
type HTTPStatusHandler ¶
HTTPStatusHandler defines how we tread the http response code
func DetailedHTTPStatusHandler ¶
func DetailedHTTPStatusHandler(name string) HTTPStatusHandler
DetailedHTTPStatusHandler is a HTTPStatusHandler implementation
func GetHTTPStatusHandler ¶
func GetHTTPStatusHandler(remote *config.Backend) HTTPStatusHandler
GetHTTPStatusHandler returns a status handler. If the 'return_error_details' key is defined at the extra config, it returns a DetailedHTTPStatusHandler. Otherwise, it returns a DefaultHTTPStatusHandler
type NamedHTTPResponseError ¶
type NamedHTTPResponseError struct { HTTPResponseError // contains filtered or unexported fields }
NamedHTTPResponseError is the error to be returned by the DetailedHTTPStatusHandler
func (NamedHTTPResponseError) Name ¶
func (r NamedHTTPResponseError) Name() string
Name returns the name of the backend where the error happened
Directories ¶
Path | Synopsis |
---|---|
Package graphql offers a param extractor and basic types for building GraphQL requests
|
Package graphql offers a param extractor and basic types for building GraphQL requests |
Package plugin provides plugin register interfaces for building http client plugins.
|
Package plugin provides plugin register interfaces for building http client plugins. |