Documentation ¶
Index ¶
- func ParseHTTPResponseBodyJSON(resp *http.Response, response interface{}) error
- func ParseHTTPResponseBodyXML(resp *http.Response, response interface{}) error
- type Client
- func (c *Client) DownloadFile(url, filename string, header http.Header, cookies []*http.Cookie) error
- func (c *Client) DownloadRequest(method, url, filename string, header http.Header, cookies []*http.Cookie) error
- func (c *Client) SendRequest(method, url string, body io.Reader, header http.Header, cookies []*http.Cookie) (*http.Response, error)
- func (c *Client) SetOptions(options ClientOptions)
- func (c *Client) Upload(data UploadRequestData) (*http.Response, error)
- func (c *Client) UploadFile(url, file, fileFieldName string, header http.Header, cookies []*http.Cookie) (*http.Response, error)
- func (c *Client) UploadRequest(method, url, file, fileFieldName string, header http.Header, ...) (*http.Response, error)
- type ClientOptions
- type Downloader
- type Sender
- type TransportWrapper
- type UploadRequestData
- type Uploader
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ParseHTTPResponseBodyJSON ¶ added in v1.56.0
ParseHTTPResponseBodyJSON parses a JSON http response into a given interface
func ParseHTTPResponseBodyXML ¶ added in v1.56.0
ParseHTTPResponseBodyXML parses a XML http response into a given interface
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client defines an http client object
func (*Client) DownloadFile ¶ added in v1.14.0
func (c *Client) DownloadFile(url, filename string, header http.Header, cookies []*http.Cookie) error
DownloadFile downloads a file's content as GET request from the specified URL to the specified file
func (*Client) DownloadRequest ¶ added in v1.14.0
func (c *Client) DownloadRequest(method, url, filename string, header http.Header, cookies []*http.Cookie) error
DownloadRequest ...
func (*Client) SendRequest ¶
func (c *Client) SendRequest(method, url string, body io.Reader, header http.Header, cookies []*http.Cookie) (*http.Response, error)
SendRequest sends an http request with a defined method
On error, any Response can be ignored and the Response.Body does not need to be closed.
func (*Client) SetOptions ¶
func (c *Client) SetOptions(options ClientOptions)
SetOptions sets options used for the http client
func (*Client) Upload ¶ added in v1.38.0
func (c *Client) Upload(data UploadRequestData) (*http.Response, error)
Upload uploads a file's content as multipart-form with given http method request to the specified URL
type ClientOptions ¶
type ClientOptions struct { // MaxRequestDuration has a default value of "0", meaning "no maximum // request duration". If it is greater than 0, an overall, hard timeout // for the request will be enforced. This should only be used if the // length of the request bodies is known. MaxRequestDuration time.Duration MaxRetries int // TransportTimeout defaults to 3 minutes, if not specified. It is // used for the transport layer and duration of handshakes and such. TransportTimeout time.Duration TransportSkipVerification bool Username string Password string Token string Logger *logrus.Entry CookieJar http.CookieJar DoLogRequestBodyOnDebug bool DoLogResponseBodyOnDebug bool }
ClientOptions defines the options to be set on the client
type Downloader ¶ added in v1.14.0
type Downloader interface { SetOptions(options ClientOptions) DownloadFile(url, filename string, header http.Header, cookies []*http.Cookie) error }
Downloader ...
type Sender ¶
type Sender interface { SendRequest(method, url string, body io.Reader, header http.Header, cookies []*http.Cookie) (*http.Response, error) SetOptions(options ClientOptions) }
Sender provides an interface to the piper http client for uid/pwd and token authenticated requests
type TransportWrapper ¶ added in v1.38.0
type TransportWrapper struct { Transport http.RoundTripper // contains filtered or unexported fields }
TransportWrapper is a wrapper for central logging capabilities
type UploadRequestData ¶ added in v1.38.0
type UploadRequestData struct { // Method is the HTTP method used for the request. Must be one of http.MethodPost or http.MethodPut. Method string // URL for the request URL string // File path to be stored in the created form field. File string // Form field name under which the file name will be stored. FileFieldName string // Additional form fields which will be added to the request if not nil. FormFields map[string]string // Reader from which the file contents will be read. FileContent io.Reader Header http.Header Cookies []*http.Cookie }
UploadRequestData encapsulates the parameters for calling uploader.Upload()
type Uploader ¶ added in v1.9.0
type Uploader interface { Sender UploadRequest(method, url, file, fieldName string, header http.Header, cookies []*http.Cookie) (*http.Response, error) UploadFile(url, file, fieldName string, header http.Header, cookies []*http.Cookie) (*http.Response, error) Upload(data UploadRequestData) (*http.Response, error) }
Uploader provides an interface to the piper http client for uid/pwd and token authenticated requests with upload capabilities