Documentation
¶
Index ¶
- Constants
- Variables
- func AutomaticContentLength(enable bool)
- func AutomaticHostHeader(enable bool)
- func Do(req *http.Request) (*http.Response, error)
- func DoRaw(method, url string, headers map[string][]string, body io.Reader) (*http.Response, error)
- func DoRawWithOptions(method, url string, headers map[string][]string, body io.Reader, ...) (*http.Response, error)
- func DumpRequestRaw(method, uri, uripath string, headers map[string][]string, body io.Reader, ...) ([]byte, error)
- func Get(url string) (*http.Response, error)
- func Post(url string, mimetype string, r io.Reader) (*http.Response, error)
- func TlsHandshake(conn net.Conn, addr string, timeout time.Duration) (net.Conn, error)
- type Client
- func (c *Client) Do(req *http.Request) (*http.Response, error)
- func (c *Client) DoRaw(method, url string, headers map[string][]string, body io.Reader) (*http.Response, error)
- func (c *Client) DoRawWithOptions(method, url string, headers map[string][]string, body io.Reader, ...) (*http.Response, error)
- func (c *Client) Get(url string) (*http.Response, error)
- func (c *Client) Head(url string) (*http.Response, error)
- func (c *Client) Post(url string, mimetype string, body io.Reader) (*http.Response, error)
- type Conn
- type Dialer
- type Options
- type RedirectStatus
- type StatusError
Constants ¶
const MaxResponseReadSizeDecompress = 10 * 1024 * 1024
Variables ¶
var DefaultClient = Client{ Options: DefaultOptions, // contains filtered or unexported fields }
DefaultClient is the default HTTP client for doing raw requests
var DefaultOptions = &Options{ Timeout: 30 * time.Second, FollowRedirects: true, MaxRedirects: 10, AutomaticHostHeader: true, AutomaticContentLength: true, }
DefaultOptions is the default configuration options for the client
Functions ¶
func AutomaticContentLength ¶
func AutomaticContentLength(enable bool)
AutomaticContentLength performs automatic calculation of request content length.
func AutomaticHostHeader ¶
func AutomaticHostHeader(enable bool)
AutomaticHostHeader sets Host header for requests automatically
func DoRawWithOptions ¶
func DoRawWithOptions(method, url string, headers map[string][]string, body io.Reader, options *Options) (*http.Response, error)
DoRawWithOptions does a raw request with some configuration
func DumpRequestRaw ¶
func DumpRequestRaw(method, uri, uripath string, headers map[string][]string, body io.Reader, options *Options) ([]byte, error)
DumpRequestRaw to string
Types ¶
type Client ¶
type Client struct {
Options *Options
Jar *cookiejar.Jar
// contains filtered or unexported fields
}
Client is a client for making raw http requests with go
func (*Client) DoRaw ¶
func (c *Client) DoRaw(method, url string, headers map[string][]string, body io.Reader) (*http.Response, error)
DoRaw does a raw request with some configuration
func (*Client) DoRawWithOptions ¶
func (c *Client) DoRawWithOptions(method, url string, headers map[string][]string, body io.Reader, options *Options) (*http.Response, error)
DoRawWithOptions performs a raw request with additional options
type Conn ¶
type Conn interface {
client.Client
io.Closer
SetDeadline(time.Time) error
SetReadDeadline(time.Time) error
SetWriteDeadline(time.Time) error
Release()
}
Conn is an interface implemented by a connection
type Dialer ¶
type Dialer interface {
// Dial dials a remote http server returning a Conn.
Dial(protocol, addr string, options *Options) (Conn, error)
DialWithProxy(protocol, addr, proxyURL string, timeout time.Duration) (Conn, error)
// DialTimeout dials a remote http server with timeout returning a Conn.
DialTimeout(protocol, addr string, timeout time.Duration, options *Options) (Conn, error)
}
Dialer can dial a remote HTTP server.
type Options ¶
type Options struct {
Timeout time.Duration
FollowRedirects bool
MaxRedirects int
AutomaticHostHeader bool
AutomaticContentLength bool
CustomHeaders client.Headers
ForceReadAllBody bool // ignores content length and reads all body
CustomRawBytes []byte
Proxy string
ProxyDialTimeout time.Duration
SNI string
}
Options contains configuration options for rawhttp client
type RedirectStatus ¶
RedirectStatus is the current redirect status for the request
type StatusError ¶
StatusError is a HTTP status error object
func (*StatusError) Error ¶
func (s *StatusError) Error() string