Versions in this module Expand all Collapse all v1 v1.2.3 Apr 27, 2020 Changes in this version + type DNSResolverFunc func(host string) (ip string, err error) + type DialContext func(ctx context.Context, network, addr string) (net.Conn, error) + type Message struct + Name string + func (*Message) Descriptor() ([]byte, []int) + func (*Message) ProtoMessage() + func (m *Message) GetName() string + func (m *Message) Reset() + func (m *Message) String() string + type Option func(*options) + func WithClient(client *http.Client) Option + func WithClientTrace(t *httptrace.ClientTrace) Option + func WithConnectTimeout(timeout time.Duration) Option + func WithCookieJar(cookieJar http.CookieJar) Option + func WithDNSResolver(dnsResolver DNSResolverFunc) Option + func WithDebug() Option + func WithDisableKeepAlive() Option + func WithEnableDefaultHeader() Option + func WithMaxIdleConnsPerHost(n int) Option + func WithProxyURL(proxyURL string) Option + func WithRequestInterceptor(i RequestInterceptor) Option + func WithResponseInterceptor(i ResponseInterceptor) Option + func WithRetryTime(retryTimes int) Option + func WithShouldRetryFunc(f func(*http.Request, *http.Response, error) bool) Option + func WithTimeout(timeout time.Duration) Option + type Request struct + func NewRequest(opt ...Option) *Request + func (req *Request) Delete(url string, data interface{}, header http.Header) (*Response, error) + func (req *Request) Get(url string, params url.Values, header http.Header) (*Response, error) + func (req *Request) Post(url string, data interface{}, header http.Header) (*Response, error) + func (req *Request) PostJSON(url string, data interface{}, header http.Header) (*Response, error) + func (req *Request) PostProtoBuf(url string, v proto.Message, header http.Header) (*Response, error) + func (req *Request) Put(url string, data interface{}, header http.Header) (*Response, error) + func (req *Request) UploadFile(url string, reader io.Reader, filename string, header http.Header, ...) (*Response, error) + type RequestInterceptor func(req *http.Request) + type Response struct + func Get(url string, data url.Values, header http.Header) (*Response, error) + func Post(url string, data interface{}, header http.Header) (*Response, error) + func PostJSON(url string, data interface{}, header http.Header) (*Response, error) + func (resp *Response) Bytes() ([]byte, error) + func (resp *Response) DecodeJSON(v interface{}) error + func (resp *Response) DecodeProtoBuf(v interface{}) error + func (resp *Response) Discard() (int64, error) + func (resp *Response) Header() http.Header + func (resp *Response) IsStatusOK() bool + func (resp *Response) Raw() *http.Response + func (resp *Response) String() (string, error) + func (resp *Response) WriteFile(filename string) (int64, error) + func (resp *Response) WriteTo(w io.Writer) (int64, error) + type ResponseInterceptor func(req *http.Request, resp *http.Response, err error)