Versions in this module Expand all Collapse all v2 v2.1.0 Feb 18, 2026 v2.0.0 Feb 17, 2026 Changes in this version + func WithBasicAuth(username string, password string) httpclientcontract.RequestOption + func WithBearerToken(token string) httpclientcontract.RequestOption + func WithBody(body any) httpclientcontract.RequestOption + func WithHeader(key string, value string) httpclientcontract.RequestOption + func WithHeaders(headers map[string]string) httpclientcontract.RequestOption + func WithJson(data any) httpclientcontract.RequestOption + func WithMaxResponseBodyBytes(maxResponseBodyBytes int) httpclientcontract.RequestOption + func WithQuery(key string, value string) httpclientcontract.RequestOption + func WithQueryParams(parameters map[string]string) httpclientcontract.RequestOption + func WithTimeout(timeout time.Duration) httpclientcontract.RequestOption + type AuthorizationOptions struct + func NewAuthorizationOptions() *AuthorizationOptions + func (instance *AuthorizationOptions) Basic() httpclientcontract.BasicAuthorizationOptions + func (instance *AuthorizationOptions) Bearer() string + func (instance *AuthorizationOptions) SetBasic(basic httpclientcontract.BasicAuthorizationOptions) + func (instance *AuthorizationOptions) SetBearer(bearer string) + type BasicAuthorizationOptions struct + func (instance *BasicAuthorizationOptions) Password() string + func (instance *BasicAuthorizationOptions) SetPassword(password string) + func (instance *BasicAuthorizationOptions) SetUsername(username string) + func (instance *BasicAuthorizationOptions) Username() string + type HttpClient struct + func NewDefaultHttpClient() *HttpClient + func NewHttpClient(config *HttpClientConfig) *HttpClient + func (instance *HttpClient) Delete(urlString string, options ...httpclientcontract.RequestOption) (httpclientcontract.Response, error) + func (instance *HttpClient) Get(urlString string, options ...httpclientcontract.RequestOption) (httpclientcontract.Response, error) + func (instance *HttpClient) Patch(urlString string, body any, options ...httpclientcontract.RequestOption) (httpclientcontract.Response, error) + func (instance *HttpClient) Post(urlString string, body any, options ...httpclientcontract.RequestOption) (httpclientcontract.Response, error) + func (instance *HttpClient) Put(urlString string, body any, options ...httpclientcontract.RequestOption) (httpclientcontract.Response, error) + func (instance *HttpClient) Request(method string, urlString string, options ...httpclientcontract.RequestOption) (httpclientcontract.Response, error) + func (instance *HttpClient) RequestStream(method string, urlString string, options ...httpclientcontract.RequestOption) (httpclientcontract.StreamResponse, error) + func (instance *HttpClient) SetBaseUrl(baseUrl string) + func (instance *HttpClient) SetHeader(key string, value string) + func (instance *HttpClient) SetTimeout(timeout time.Duration) + type HttpClientConfig struct + func NewHttpClientConfig(baseUrl string, timeout time.Duration, headers map[string]string) *HttpClientConfig + func (instance *HttpClientConfig) BaseUrl() string + func (instance *HttpClientConfig) Headers() map[string]string + func (instance *HttpClientConfig) Timeout() time.Duration + type RequestOptions struct + func NewRequestOptions() *RequestOptions + func (instance *RequestOptions) Authorization() httpclientcontract.AuthorizationOptions + func (instance *RequestOptions) Body() any + func (instance *RequestOptions) ContentType() string + func (instance *RequestOptions) Headers() map[string]string + func (instance *RequestOptions) MaxResponseBodyBytes() int + func (instance *RequestOptions) Query() map[string]string + func (instance *RequestOptions) SetBasicAuth(username string, password string) + func (instance *RequestOptions) SetBearerToken(token string) + func (instance *RequestOptions) SetBody(body any) + func (instance *RequestOptions) SetHeader(key string, value string) + func (instance *RequestOptions) SetHeaders(headers map[string]string) + func (instance *RequestOptions) SetJson(data any) + func (instance *RequestOptions) SetMaxResponseBodyBytes(maxResponseBodyBytes int) + func (instance *RequestOptions) SetQuery(key string, value string) + func (instance *RequestOptions) SetQueryParams(parameters map[string]string) + func (instance *RequestOptions) SetTimeout(timeout time.Duration) + func (instance *RequestOptions) Timeout() time.Duration + type Response struct + func NewResponse(statusCode int, status string, headers nethttp.Header, body []byte, ...) *Response + func (instance *Response) Body() []byte + func (instance *Response) Headers() nethttp.Header + func (instance *Response) IsClientError() bool + func (instance *Response) IsServerError() bool + func (instance *Response) IsSuccess() bool + func (instance *Response) Json(target any) error + func (instance *Response) Request() *nethttp.Request + func (instance *Response) Status() string + func (instance *Response) StatusCode() int + func (instance *Response) String() string + type StreamResponse struct + func NewStreamResponse(statusCode int, headers nethttp.Header, body io.ReadCloser) *StreamResponse + func (instance *StreamResponse) Body() io.ReadCloser + func (instance *StreamResponse) Close() error + func (instance *StreamResponse) Headers() nethttp.Header + func (instance *StreamResponse) StatusCode() int Other modules containing this package github.com/precision-soft/melody