Documentation ¶
Index ¶
- Variables
- type Client
- func (c *Client) Delete(ctx context.Context, req *Request, opts ...RequestOption) (*Response, error)
- func (c *Client) Get(ctx context.Context, req *Request, opts ...RequestOption) (*Response, error)
- func (c *Client) Patch(ctx context.Context, req *Request, opts ...RequestOption) (*Response, error)
- func (c *Client) Post(ctx context.Context, req *Request, opts ...RequestOption) (*Response, error)
- func (c *Client) PostForm(ctx context.Context, req *Request, opts ...RequestOption) (*Response, error)
- func (c *Client) Put(ctx context.Context, req *Request, opts ...RequestOption) (*Response, error)
- type Headers
- type Option
- type PathParams
- type QueryParams
- type Request
- type RequestOption
- type Response
Constants ¶
This section is empty.
Variables ¶
var ( ErrParseURL = func(err error) error { return errors.New("error on parsing the request url"). WithCode("ERR_PARSE_REQUEST_URL"). WithKind(errors.KindInvalidInput). WithCause(err) } ErrBuildRequestError = func(err error) error { return errors.New("could not build http request"). WithCode("ERR_BUILD_HTTP_REQUEST"). WithKind(errors.KindInternal). WithCause(err) } ErrRequestError = func(err error) error { return errors.New("http request error"). WithCode("HTTP_REQUEST_ERROR"). WithKind(errors.KindUnknown). WithCause(err). Retryable() } ErrBodyReadError = func(err error) error { return errors.New("http request error"). WithCode("ERR_READ_HTTP_RESPONSE_BODY"). WithKind(errors.KindUnknown). WithCause(err) } ErrUnexpectedStatusCode = func(code int) error { kind := kindByStatusCode(code) retry := retryByStatusCode[code] err := errors.New("unexpected http response status code"). WithCode("ERR_UNEXPECTED_STATUS_CODE"). WithKind(kind) if !retry { return err } return err.Retryable() } ErrBodyCastError = func(err error) error { return errors.New("could not cast http response body"). WithCode("ERR_HTTP_RESPONSE_BODY_CAST"). WithKind(errors.KindUnknown). WithCause(err) } )
All errors that can be emitted by http requests.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client provides methods for making REST requests.
func (*Client) Delete ¶
func (c *Client) Delete(ctx context.Context, req *Request, opts ...RequestOption) (*Response, error)
Delete execute a http DELETE method with application/json headers.
type Headers ¶ added in v1.1.3
Headers is a map containing the relation key=value of the headers used on the http rest request.
type Option ¶
type Option func(*Client)
Option is a type to set HTTP Client options.
func WithTimeout ¶
WithTimeout instructs the HTTP Client to cancel any requests that exceeds the given timeout.
type PathParams ¶ added in v1.1.3
PathParams is a map containing the relation key=value of the path params used on the http rest request. It will be used to replace values given in Path parameter.
type QueryParams ¶ added in v1.1.3
QueryParams is a map containing the relation key=value of the query params used on the http rest request.
type Request ¶ added in v1.1.3
type Request struct { Host string Path string Body []byte Headers Headers QueryParams QueryParams PathParams PathParams // contains filtered or unexported fields }
Request are the params used to build a new http rest request.
type RequestOption ¶ added in v1.2.0
type RequestOption func(*Request)
RequestOption is a type to set HTTP Request options.
func WithAcceptStatusCode ¶ added in v1.2.0
func WithAcceptStatusCode(code int) RequestOption
WithAcceptStatusCode indicates that the current request accepts the given status code. It is possible to use this option multiple times for different status codes in the same request.