httpx

package
v0.0.0-...-082a3d8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 25, 2024 License: MIT Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Default405Body = []byte("405 method not allowed")

Functions

func ClientFromContext

func ClientFromContext(ctx context.Context) (*http.Client, bool)

func ConnectHandler

func ConnectHandler(handler http.Handler) http.Handler

func ConnectHandlerFunc

func ConnectHandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func DeleteHandler

func DeleteHandler(handler http.Handler) http.Handler

func DeleteHandlerFunc

func DeleteHandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func DisableKeepAlivesClient

func DisableKeepAlivesClient() *http.Client

DisableKeepAlivesClient returns a new http.Client with similar default values to http.Client, but with a non-shared Transport, idle connections disabled, and keepalives disabled.

func DisableKeepAlivesTransport

func DisableKeepAlivesTransport() *http.Transport

DisableKeepAlivesTransport returns a new http.Transport with similar default values to http.DefaultTransport, but with idle connections and keepalives disabled.

func GetHandler

func GetHandler(handler http.Handler) http.Handler

func GetHandlerFunc

func GetHandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func Handler

func Handler(method string, handler http.Handler) http.Handler

func HandlerFunc

func HandlerFunc(method string, handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func HeadHandler

func HeadHandler(handler http.Handler) http.Handler

func HeadHandlerFunc

func HeadHandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func MatchHandler

func MatchHandler(methods []string, handler http.Handler) http.Handler

func MatchHandlerFunc

func MatchHandlerFunc(methods []string, handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func NewContextWithClient

func NewContextWithClient(ctx context.Context, cli *http.Client) context.Context

func NewContextWithRequest

func NewContextWithRequest(ctx context.Context, req *http.Request) context.Context

func NewContextWithResponse

func NewContextWithResponse(ctx context.Context, resp *http.Response) context.Context

func OptionsHandler

func OptionsHandler(handler http.Handler) http.Handler

func OptionsHandlerFunc

func OptionsHandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func PatchHandler

func PatchHandler(handler http.Handler) http.Handler

func PatchHandlerFunc

func PatchHandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func PooledClient

func PooledClient() *http.Client

PooledClient returns a new http.Client with similar default values to http.Client, but with a shared Transport. Do not use this function for transient clients as it can leak file descriptors over time. Only use this for clients that will be re-used for the same host(s).

func PooledTransport

func PooledTransport() *http.Transport

PooledTransport returns a new http.Transport with similar default values to http.DefaultTransport. Do not use this for transient transports as it can leak file descriptors over time. Only use this for transports that will be re-used for the same host(s).

func PostHandler

func PostHandler(handler http.Handler) http.Handler

func PostHandlerFunc

func PostHandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func PutHandler

func PutHandler(handler http.Handler) http.Handler

func PutHandlerFunc

func PutHandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

func RequestFromContext

func RequestFromContext(ctx context.Context) (*http.Request, bool)

func ResponseFromContext

func ResponseFromContext(ctx context.Context) (*http.Response, bool)

func TraceHandler

func TraceHandler(handler http.Handler) http.Handler

func TraceHandlerFunc

func TraceHandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc

Types

type ClientBuilder

type ClientBuilder struct {
	// contains filtered or unexported fields
}

func (*ClientBuilder) Build

func (builder *ClientBuilder) Build() *http.Client

func (*ClientBuilder) CheckRedirect

func (builder *ClientBuilder) CheckRedirect(f func(req *http.Request, via []*http.Request) error) *ClientBuilder

func (*ClientBuilder) Jar

func (builder *ClientBuilder) Jar(jar http.CookieJar) *ClientBuilder

func (*ClientBuilder) Timeout

func (builder *ClientBuilder) Timeout(timeout time.Duration) *ClientBuilder

func (*ClientBuilder) Transport

func (builder *ClientBuilder) Transport(transport http.RoundTripper) *ClientBuilder

type CompositeHandler

type CompositeHandler struct {
	// contains filtered or unexported fields
}

func (*CompositeHandler) AddHandler

func (h *CompositeHandler) AddHandler(handler http.Handler, match func(request *http.Request) bool)

func (*CompositeHandler) ServeHTTP

func (h *CompositeHandler) ServeHTTP(writer http.ResponseWriter, request *http.Request)

type DoCommand

type DoCommand struct{}

func (*DoCommand) Execute

func (cmd *DoCommand) Execute(ctx context.Context) (context.Context, error)

type FormData deprecated

type FormData struct {
	FieldName string
	Value     string
	File      io.Reader
	Filename  string
}

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

type RequestBuilder deprecated

type RequestBuilder struct {
	// contains filtered or unexported fields
}

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func NewRequestBuilder deprecated

func NewRequestBuilder() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) APIKey deprecated

func (builder *RequestBuilder) APIKey(key string, value string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) AddCookie deprecated

func (builder *RequestBuilder) AddCookie(cookie *http.Cookie) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) AddHeader deprecated

func (builder *RequestBuilder) AddHeader(name, value string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) AddQuery deprecated

func (builder *RequestBuilder) AddQuery(key, value string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) BasicAuth deprecated

func (builder *RequestBuilder) BasicAuth(username, password string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) BearerAuth deprecated

func (builder *RequestBuilder) BearerAuth(token string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Body deprecated

func (builder *RequestBuilder) Body(body io.Reader, contentType string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Build deprecated

func (builder *RequestBuilder) Build(ctx context.Context) (*http.Request, error)

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) BytesBody deprecated

func (builder *RequestBuilder) BytesBody(body []byte, contentType string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) CacheControl deprecated

func (builder *RequestBuilder) CacheControl(directives ...string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Connect deprecated

func (builder *RequestBuilder) Connect() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Cookie deprecated

func (builder *RequestBuilder) Cookie(cookie *http.Cookie) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Cookies deprecated

func (builder *RequestBuilder) Cookies(cookies ...*http.Cookie) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) CustomAuth deprecated

func (builder *RequestBuilder) CustomAuth(scheme, token string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Delete deprecated

func (builder *RequestBuilder) Delete() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Execute deprecated

func (builder *RequestBuilder) Execute(ctx context.Context, cli *http.Client) *ResponseHelper

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) FormBody deprecated

func (builder *RequestBuilder) FormBody(form url.Values) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Get deprecated

func (builder *RequestBuilder) Get() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) GobBody deprecated

func (builder *RequestBuilder) GobBody(body any) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Head deprecated

func (builder *RequestBuilder) Head() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Header deprecated

func (builder *RequestBuilder) Header(name, value string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Headers deprecated

func (builder *RequestBuilder) Headers(header http.Header) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) IfMatch deprecated

func (builder *RequestBuilder) IfMatch(etags ...string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) IfModifiedSince deprecated

func (builder *RequestBuilder) IfModifiedSince(time string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) IfNoneMatch deprecated

func (builder *RequestBuilder) IfNoneMatch(etag string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) IfUnmodifiedSince deprecated

func (builder *RequestBuilder) IfUnmodifiedSince(time string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) JSONBody deprecated

func (builder *RequestBuilder) JSONBody(body any) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Method deprecated

func (builder *RequestBuilder) Method(method string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) MultipartBody deprecated

func (builder *RequestBuilder) MultipartBody(formData ...*FormData) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) ObjectBody deprecated

func (builder *RequestBuilder) ObjectBody(body any, marshal func(any) ([]byte, error), contentType string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Options deprecated

func (builder *RequestBuilder) Options() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Patch deprecated

func (builder *RequestBuilder) Patch() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Post deprecated

func (builder *RequestBuilder) Post() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) ProtobufBody deprecated

func (builder *RequestBuilder) ProtobufBody(body proto.Message) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Put deprecated

func (builder *RequestBuilder) Put() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Queries deprecated

func (builder *RequestBuilder) Queries(queries url.Values) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Query deprecated

func (builder *RequestBuilder) Query(name, value string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) QueryString deprecated

func (builder *RequestBuilder) QueryString(q string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) RemoveCookie deprecated

func (builder *RequestBuilder) RemoveCookie(cookie *http.Cookie) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) RemoveHeader deprecated

func (builder *RequestBuilder) RemoveHeader(name string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) RemoveQuery deprecated

func (builder *RequestBuilder) RemoveQuery(name string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) TextBody deprecated

func (builder *RequestBuilder) TextBody(body string, contentType string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) Trace deprecated

func (builder *RequestBuilder) Trace() *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) URL deprecated

func (builder *RequestBuilder) URL(uri *url.URL) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) URLString deprecated

func (builder *RequestBuilder) URLString(urlString string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) UserAgent deprecated

func (builder *RequestBuilder) UserAgent(ua string) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*RequestBuilder) XMLBody deprecated

func (builder *RequestBuilder) XMLBody(body any) *RequestBuilder

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

type ResponseHelper deprecated

type ResponseHelper struct {
	// contains filtered or unexported fields
}

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func NewResponseHelper deprecated

func NewResponseHelper(resp *http.Response, err error) *ResponseHelper

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) Body deprecated

func (helper *ResponseHelper) Body() (io.ReadCloser, error)

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) BytesBody deprecated

func (helper *ResponseHelper) BytesBody() ([]byte, error)

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) Cookies deprecated

func (helper *ResponseHelper) Cookies() ([]*http.Cookie, error)

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) Err deprecated

func (helper *ResponseHelper) Err() error

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) FileBody deprecated

func (helper *ResponseHelper) FileBody(file io.Writer) error

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) GobBody deprecated

func (helper *ResponseHelper) GobBody(body proto.Message) error

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) Headers deprecated

func (helper *ResponseHelper) Headers() (http.Header, error)

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) JSONBody deprecated

func (helper *ResponseHelper) JSONBody(body any) error

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) ObjectBody deprecated

func (helper *ResponseHelper) ObjectBody(body any, unmarshal func([]byte, any) error) error

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) ProtobufBody deprecated

func (helper *ResponseHelper) ProtobufBody(body proto.Message) error

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) StatusCode deprecated

func (helper *ResponseHelper) StatusCode() (int, error)

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) TextBody deprecated

func (helper *ResponseHelper) TextBody() (string, error)

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) Trailer deprecated

func (helper *ResponseHelper) Trailer() (http.Header, error)

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

func (*ResponseHelper) XMLBody deprecated

func (helper *ResponseHelper) XMLBody(body any) error

Deprecated: Do not use. use github.com/go-leo/netx/httpx/outgoing instead.

type TransportBuilder

type TransportBuilder struct {
	// contains filtered or unexported fields
}

func (*TransportBuilder) Build

func (builder *TransportBuilder) Build() *http.Transport

func (*TransportBuilder) Dial

func (builder *TransportBuilder) Dial(dial func(ctx context.Context, network string, addr string) (net.Conn, error)) *TransportBuilder

func (*TransportBuilder) DialTLS

func (builder *TransportBuilder) DialTLS(dialTLS func(ctx context.Context, network string, addr string) (net.Conn, error)) *TransportBuilder

func (*TransportBuilder) DisableCompression

func (builder *TransportBuilder) DisableCompression(disable bool) *TransportBuilder

func (*TransportBuilder) DisableKeepAlives

func (builder *TransportBuilder) DisableKeepAlives(disable bool) *TransportBuilder

func (*TransportBuilder) ExpectContinueTimeout

func (builder *TransportBuilder) ExpectContinueTimeout(timeout time.Duration) *TransportBuilder

func (*TransportBuilder) ForceAttemptHTTP2

func (builder *TransportBuilder) ForceAttemptHTTP2(enable bool) *TransportBuilder

func (*TransportBuilder) GetProxyConnectHeader

func (builder *TransportBuilder) GetProxyConnectHeader(f func(ctx context.Context, proxyURL *url.URL, target string) (http.Header, error)) *TransportBuilder

func (*TransportBuilder) IdleConnTimeout

func (builder *TransportBuilder) IdleConnTimeout(timeout time.Duration) *TransportBuilder

func (*TransportBuilder) MaxConnsPerHost

func (builder *TransportBuilder) MaxConnsPerHost(n int) *TransportBuilder

func (*TransportBuilder) MaxIdleConns

func (builder *TransportBuilder) MaxIdleConns(n int) *TransportBuilder

func (*TransportBuilder) MaxIdleConnsPerHost

func (builder *TransportBuilder) MaxIdleConnsPerHost(n int) *TransportBuilder

func (*TransportBuilder) MaxResponseHeaderBytes

func (builder *TransportBuilder) MaxResponseHeaderBytes(n int64) *TransportBuilder

func (*TransportBuilder) Proxy

func (builder *TransportBuilder) Proxy(proxy func(*http.Request) (*url.URL, error)) *TransportBuilder

func (*TransportBuilder) ProxyConnectHeader

func (builder *TransportBuilder) ProxyConnectHeader(h http.Header) *TransportBuilder

func (*TransportBuilder) ReadBufferSize

func (builder *TransportBuilder) ReadBufferSize(n int) *TransportBuilder

func (*TransportBuilder) ResponseHeaderTimeout

func (builder *TransportBuilder) ResponseHeaderTimeout(timeout time.Duration) *TransportBuilder

func (*TransportBuilder) TLSConfig

func (builder *TransportBuilder) TLSConfig(tlsConfig *tls.Config) *TransportBuilder

func (*TransportBuilder) TLSHandshakeTimeout

func (builder *TransportBuilder) TLSHandshakeTimeout(timeout time.Duration) *TransportBuilder

func (*TransportBuilder) TLSNextProto

func (builder *TransportBuilder) TLSNextProto(f map[string]func(authority string, c *tls.Conn) http.RoundTripper) *TransportBuilder

func (*TransportBuilder) WriteBufferSize

func (builder *TransportBuilder) WriteBufferSize(n int) *TransportBuilder

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL