Versions in this module Expand all Collapse all v2 v2.0.0 Apr 30, 2020 Changes in this version + var ErrRequestNoInterface = errors.New("geyser: no Interface set in Request") + var ErrRequestNoMethod = errors.New("geyser: no Method set in Request") + type Client interface + Execute func(req *Request) (*Response, error) + HostURL func() string + SetCookieJar func(jar http.CookieJar) Client + SetCookies func(cookies []*http.Cookie) Client + SetDebug func(debug bool) Client + SetHeader func(key string, value string) Client + SetHeaders func(header http.Header) Client + SetHostURL func(host string) Client + SetLogger func(logger Logger) Client + SetProxy func(proxy string) Client + SetQueryParam func(key string, value string) Client + SetQueryParams func(query url.Values) Client + SetRetryCount func(count int) Client + SetRetryMaxWaitTime func(maxWait time.Duration) Client + SetRetryWaitTime func(wait time.Duration) Client + SetTimeout func(timeout time.Duration) Client + SetTransport func(transport http.RoundTripper) Client + func New(options ...ClientOption) (Client, error) + type ClientOption func(Client) error + func WithCookieJar(jar http.CookieJar) ClientOption + func WithDebug() ClientOption + func WithHeaders(headers http.Header) ClientOption + func WithHostURL(baseURL string) ClientOption + func WithKey(key string) ClientOption + func WithLanguage(lang string) ClientOption + func WithLogger(logger Logger) ClientOption + func WithProxy(proxy string) ClientOption + func WithQueryParams(query url.Values) ClientOption + func WithRetryCount(retryCount int) ClientOption + func WithRetryMaxWaitTime(retryMaxWaitTime time.Duration) ClientOption + func WithRetryWaitTime(retryWaitTime time.Duration) ClientOption + func WithTimeout(timeout time.Duration) ClientOption + func WithTransport(transport http.RoundTripper) ClientOption + func WithUserAgent(userAgent string) ClientOption + type Logger interface + Debugf func(format string, v ...interface{}) + Errorf func(format string, v ...interface{}) + Warnf func(format string, v ...interface{}) + type Request struct + Body interface{} + Context context.Context + Cookies []*http.Cookie + Form url.Values + Header http.Header + Interface *schema.Interface + Method *schema.Method + Query url.Values + Raw *http.Request + Result interface{} + Time time.Time + func NewRequest(si *schema.Interface, sm *schema.Method) *Request + func (r *Request) SetAPIKey(v string) *Request + func (r *Request) SetBody(b interface{}) *Request + func (r *Request) SetContext(ctx context.Context) *Request + func (r *Request) SetCookies(cookies []*http.Cookie) *Request + func (r *Request) SetForm(f url.Values) *Request + func (r *Request) SetHeader(key, value string) *Request + func (r *Request) SetHeaders(header http.Header) *Request + func (r *Request) SetInterface(i *schema.Interface) *Request + func (r *Request) SetLanguage(v string) *Request + func (r *Request) SetMethod(m *schema.Method) *Request + func (r *Request) SetQueryParam(key, value string) *Request + func (r *Request) SetQueryParams(query url.Values) *Request + func (r *Request) SetResult(result interface{}) *Request + type Response struct + Body io.ReadCloser + BodyData []byte + Raw *http.Response + Request *Request + Time time.Time + func (r *Response) Cookies() []*http.Cookie + func (r *Response) Duration() time.Duration + func (r *Response) Header() http.Header + func (r *Response) IsError() bool + func (r *Response) IsSuccess() bool + func (r *Response) Result() interface{} + func (r *Response) Status() string + func (r *Response) StatusCode() int Other modules containing this package github.com/13k/geyser