Documentation ¶
Index ¶
- func BuildResponse(response *http.Response) *httpRes
- func GenCurlCommand(req *http.Request, httpCookiejar http.CookieJar) (curlString string)
- type ContentType
- type RequestBuilder
- func (r *RequestBuilder) AddCookieKV(name, value string) *RequestBuilder
- func (r *RequestBuilder) AddCookies(cookies []*http.Cookie) *RequestBuilder
- func (r *RequestBuilder) AddFile(fieldname, path string) *RequestBuilder
- func (r *RequestBuilder) AddFileHeader(fieldname, filename string, content []byte) *RequestBuilder
- func (r *RequestBuilder) EnableTrace(ctx context.Context) *RequestBuilder
- func (r *RequestBuilder) FromCurl(curl string)
- func (r *RequestBuilder) GenCurlCommand() (curl string, err error)
- func (rb *RequestBuilder) GenRequest() (*http.Request, error)
- func (r *RequestBuilder) GetRawreq() *http.Request
- func (r *RequestBuilder) SetAuthBasic(username, password string) *RequestBuilder
- func (r *RequestBuilder) SetAuthBearer(token string) *RequestBuilder
- func (r *RequestBuilder) SetBody(body []byte) *RequestBuilder
- func (r *RequestBuilder) SetContentType(ct ContentType) *RequestBuilder
- func (r *RequestBuilder) SetCtx(ctx context.Context) *RequestBuilder
- func (r *RequestBuilder) SetFormData(data map[string]string) *RequestBuilder
- func (r *RequestBuilder) SetFormDataFromValues(data url.Values) *RequestBuilder
- func (r *RequestBuilder) SetHeader(key, value string) *RequestBuilder
- func (r *RequestBuilder) SetHost(host string) *RequestBuilder
- func (r *RequestBuilder) SetIsMultiPart(b bool) *RequestBuilder
- func (r *RequestBuilder) SetJson(data any) *RequestBuilder
- func (r *RequestBuilder) SetQueryParam(param, value string) *RequestBuilder
- func (r *RequestBuilder) SetQueryParams(params map[string]string) *RequestBuilder
- func (r *RequestBuilder) SetQueryParamsFromValues(params url.Values) *RequestBuilder
- func (r *RequestBuilder) SetReq(method string, url string) *RequestBuilder
- func (r *RequestBuilder) SetUrl(url string) *RequestBuilder
- type TraceInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildResponse ¶ added in v0.0.3
Types ¶
type ContentType ¶
type ContentType string
const ( ContentTypeNone ContentType = "" ContentTypeFormEncode ContentType = "application/x-www-form-urlencoded" ContentTypeFormData ContentType = "multipart/form-data" ContentTypeJson ContentType = "application/json" ContentTypePlain ContentType = "text/plain" )
type RequestBuilder ¶ added in v0.0.5
type RequestBuilder struct {
// contains filtered or unexported fields
}
func R ¶
func R() *RequestBuilder
func (*RequestBuilder) AddCookieKV ¶ added in v0.0.5
func (r *RequestBuilder) AddCookieKV(name, value string) *RequestBuilder
func (*RequestBuilder) AddCookies ¶ added in v0.0.5
func (r *RequestBuilder) AddCookies(cookies []*http.Cookie) *RequestBuilder
func (*RequestBuilder) AddFile ¶ added in v0.0.5
func (r *RequestBuilder) AddFile(fieldname, path string) *RequestBuilder
************* params ********************* ************* file *********************
func (*RequestBuilder) AddFileHeader ¶ added in v0.0.5
func (r *RequestBuilder) AddFileHeader(fieldname, filename string, content []byte) *RequestBuilder
func (*RequestBuilder) EnableTrace ¶ added in v0.0.5
func (r *RequestBuilder) EnableTrace(ctx context.Context) *RequestBuilder
func (*RequestBuilder) FromCurl ¶ added in v0.0.5
func (r *RequestBuilder) FromCurl(curl string)
func (*RequestBuilder) GenCurlCommand ¶ added in v1.0.1
func (r *RequestBuilder) GenCurlCommand() (curl string, err error)
func (*RequestBuilder) GenRequest ¶ added in v1.0.1
func (rb *RequestBuilder) GenRequest() (*http.Request, error)
func (*RequestBuilder) GetRawreq ¶ added in v0.0.5
func (r *RequestBuilder) GetRawreq() *http.Request
************* utils *********************
func (*RequestBuilder) SetAuthBasic ¶ added in v0.0.5
func (r *RequestBuilder) SetAuthBasic(username, password string) *RequestBuilder
func (*RequestBuilder) SetAuthBearer ¶ added in v0.0.5
func (r *RequestBuilder) SetAuthBearer(token string) *RequestBuilder
func (*RequestBuilder) SetBody ¶ added in v0.0.6
func (r *RequestBuilder) SetBody(body []byte) *RequestBuilder
************* body(bytes) *********************
func (*RequestBuilder) SetContentType ¶ added in v0.0.6
func (r *RequestBuilder) SetContentType(ct ContentType) *RequestBuilder
func (*RequestBuilder) SetCtx ¶ added in v0.0.5
func (r *RequestBuilder) SetCtx(ctx context.Context) *RequestBuilder
func (*RequestBuilder) SetFormData ¶ added in v0.0.6
func (r *RequestBuilder) SetFormData(data map[string]string) *RequestBuilder
func (*RequestBuilder) SetFormDataFromValues ¶ added in v0.0.6
func (r *RequestBuilder) SetFormDataFromValues(data url.Values) *RequestBuilder
SetFormDataFromValues method appends multiple form parameters with multi-value
SetFormDataFromValues(url.Values{"words": []string{"book", "glass", "pencil"},})
func (*RequestBuilder) SetHeader ¶ added in v0.0.5
func (r *RequestBuilder) SetHeader(key, value string) *RequestBuilder
*****************header ************************
func (*RequestBuilder) SetHost ¶ added in v0.0.8
func (r *RequestBuilder) SetHost(host string) *RequestBuilder
*****************host************************
func (*RequestBuilder) SetIsMultiPart ¶ added in v0.0.6
func (r *RequestBuilder) SetIsMultiPart(b bool) *RequestBuilder
************* body(form) ********************* Set Form data(encode or multipart)
func (*RequestBuilder) SetJson ¶ added in v0.0.6
func (r *RequestBuilder) SetJson(data any) *RequestBuilder
************* body(json) *********************
func (*RequestBuilder) SetQueryParam ¶ added in v0.0.6
func (r *RequestBuilder) SetQueryParam(param, value string) *RequestBuilder
func (*RequestBuilder) SetQueryParams ¶ added in v0.0.6
func (r *RequestBuilder) SetQueryParams(params map[string]string) *RequestBuilder
************* params *********************
func (*RequestBuilder) SetQueryParamsFromValues ¶ added in v0.0.6
func (r *RequestBuilder) SetQueryParamsFromValues(params url.Values) *RequestBuilder
func (*RequestBuilder) SetReq ¶ added in v0.0.5
func (r *RequestBuilder) SetReq(method string, url string) *RequestBuilder
func (*RequestBuilder) SetUrl ¶ added in v0.0.5
func (r *RequestBuilder) SetUrl(url string) *RequestBuilder
type TraceInfo ¶
type TraceInfo struct { // DNSLookup is a duration that transport took to perform // DNS lookup. DNSLookup time.Duration // ConnTime is a duration that took to obtain a successful connection. ConnTime time.Duration // TCPConnTime is a duration that took to obtain the TCP connection. TCPConnTime time.Duration // TLSHandshake is a duration that TLS handshake took place. TLSHandshake time.Duration // ServerTime is a duration that server took to respond first byte. ServerTime time.Duration // ResponseTime is a duration since first response byte from server to // request completion. ResponseTime time.Duration // TotalTime is a duration that total request took end-to-end. TotalTime time.Duration // IsConnReused is whether this connection has been previously // used for another HTTP request. IsConnReused bool // IsConnWasIdle is whether this connection was obtained from an // idle pool. IsConnWasIdle bool // ConnIdleTime is a duration how long the connection was previously // idle, if IsConnWasIdle is true. ConnIdleTime time.Duration // RequestAttempt is to represent the request attempt made during a Resty // request execution flow, including retry count. RequestAttempt int // RemoteAddr returns the remote network address. RemoteAddr net.Addr }
TraceInfo struct is used provide request trace info such as DNS lookup duration, Connection obtain duration, Server processing duration, etc.
Since v2.0.0