Documentation ¶
Index ¶
- Constants
- func HttpHeadersSet(req *http.Request, headers ...map[string]string)
- func ParseBody(ctx op_context.Context, request *http.Request, cmd interface{}, ...) error
- func ParseQuery(ctx op_context.Context, request *http.Request, cmd interface{}) error
- func SendRawRequest(ctx op_context.Context, request *http.Request, ...) (*http.Response, error)
- func UrlEncode(msg interface{}) (string, error)
- type HttpClient
- func (c *HttpClient) Config() interface{}
- func (h *HttpClient) Context() context.Context
- func (h *HttpClient) Init(cfg config.Config, log logger.Logger, vld validator.Validator, ...) error
- func (h *HttpClient) NewGet(ctx op_context.Context, url string, msg interface{}) (*Request, error)
- func (h *HttpClient) NewPost(ctx op_context.Context, url string, msg interface{}, ...) (*Request, error)
- func (h *HttpClient) NewRequest(method, url string, body io.Reader) (*Request, error)
- func (h *HttpClient) SetTlsConfig(cfg *tls.Config)
- func (h *HttpClient) Shutdown(ctx context.Context) error
- type HttpClientConfig
- type RedirectHandler
- type Request
- func NewGet(ctx op_context.Context, uRL string, msg interface{}) (*Request, error)
- func NewGetWithContext(systemCtx context.Context, ctx op_context.Context, uRL string, msg interface{}, ...) (*Request, error)
- func NewMultipart(ctx op_context.Context, url string, files map[string]io.Reader, ...) (*Request, error)
- func NewPost(ctx op_context.Context, url string, msg interface{}, ...) (*Request, error)
- func NewPostWithContext(systemCtx context.Context, ctx op_context.Context, url string, msg interface{}, ...) (*Request, error)
- func (r *Request) Send(ctx op_context.Context, relaxedParsing ...bool) error
- func (r *Request) SendRaw(ctx op_context.Context) error
- func (r *Request) SetAuthHeader(key string, value string)
- func (r *Request) SetHeader(key string, value string)
- func (r *Request) SetSerializer(serializer ...message.Serializer)
- type UrlEncodedSerializer
- type WithHttpClient
Constants ¶
View Source
const MaxDumpSize int = 2048
Variables ¶
This section is empty.
Functions ¶
func ParseBody ¶
func ParseBody(ctx op_context.Context, request *http.Request, cmd interface{}, serializer ...message.Serializer) error
func ParseQuery ¶
func ParseQuery(ctx op_context.Context, request *http.Request, cmd interface{}) error
func SendRawRequest ¶
func SendRawRequest(ctx op_context.Context, request *http.Request, redirectHandler ...RedirectHandler) (*http.Response, error)
Types ¶
type HttpClient ¶
type HttpClient struct { HttpClientConfig // contains filtered or unexported fields }
func DefaultHttpClient ¶
func DefaultHttpClient() *HttpClient
func NewHttpClient ¶
func NewHttpClient(transport ...http.RoundTripper) *HttpClient
func (*HttpClient) Config ¶
func (c *HttpClient) Config() interface{}
func (*HttpClient) Context ¶
func (h *HttpClient) Context() context.Context
func (*HttpClient) NewGet ¶
func (h *HttpClient) NewGet(ctx op_context.Context, url string, msg interface{}) (*Request, error)
func (*HttpClient) NewPost ¶
func (h *HttpClient) NewPost(ctx op_context.Context, url string, msg interface{}, serializer ...message.Serializer) (*Request, error)
func (*HttpClient) NewRequest ¶
func (*HttpClient) SetTlsConfig ¶
func (h *HttpClient) SetTlsConfig(cfg *tls.Config)
type HttpClientConfig ¶
type HttpClientConfig struct { TIMEOUT int `default:"15"` KEEP_ALIVE int `default:"30"` MAX_IDLE_CONNECTIONS int `default:"100"` IDLE_CONNECTIONS_TIMEOUT int `default:"90"` TLS_HANDSHAKE_TIMEOUT int `default:"10"` EXPECT_CONTINUE_TIMEOUT int `default:"1"` USER_AGENT string `default:"go-backend-helpers"` }
type Request ¶
type Request struct { NativeRequest *http.Request NativeResponse *http.Response ResponseStatus int Body []byte ResponseBody []byte ResponseContent string GoodResponse interface{} BadResponse interface{} Transport http.RoundTripper Timeout int ParsingFailed bool IgnoreResponseContent bool TxSerializer message.Serializer RxSerializer message.Serializer UserAgent string // contains filtered or unexported fields }
func NewGetWithContext ¶
func NewGetWithContext(systemCtx context.Context, ctx op_context.Context, uRL string, msg interface{}, serializer ...message.Serializer) (*Request, error)
func NewMultipart ¶
func NewPost ¶
func NewPost(ctx op_context.Context, url string, msg interface{}, serializer ...message.Serializer) (*Request, error)
func NewPostWithContext ¶
func NewPostWithContext(systemCtx context.Context, ctx op_context.Context, url string, msg interface{}, serializer ...message.Serializer) (*Request, error)
func (*Request) SetAuthHeader ¶
func (*Request) SetSerializer ¶
func (r *Request) SetSerializer(serializer ...message.Serializer)
type UrlEncodedSerializer ¶
type UrlEncodedSerializer struct {
message.SerializerBase
}
func (*UrlEncodedSerializer) ContentMime ¶
func (s *UrlEncodedSerializer) ContentMime() string
func (*UrlEncodedSerializer) Format ¶
func (s *UrlEncodedSerializer) Format() string
func (*UrlEncodedSerializer) SerializeMessage ¶
func (s *UrlEncodedSerializer) SerializeMessage(message interface{}) ([]byte, error)
type WithHttpClient ¶
type WithHttpClient struct {
// contains filtered or unexported fields
}
func (*WithHttpClient) Construct ¶
func (w *WithHttpClient) Construct(transport ...http.RoundTripper)
func (*WithHttpClient) HttpClient ¶
func (w *WithHttpClient) HttpClient() *HttpClient
Click to show internal directories.
Click to hide internal directories.