Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CloseBody ¶ added in v0.1.2
func CloseBody(body io.ReadCloser)
Types ¶
type Executor ¶
type Executor interface { Execute() (resp *http.Response, err error) HandleBody(f func(body []uint8) error) error // HandleResponse require response handler, // if create a new response, MUST close old res.Body HandleResponse(func(*http.Request, *http.Response) (*http.Response, error)) ResponseHandler }
Executor provides methods for executing api
type InvalidStatusCodeError ¶ added in v0.1.2
func (*InvalidStatusCodeError) Error ¶ added in v0.1.2
func (i *InvalidStatusCodeError) Error() string
type JSONContent ¶ added in v0.1.4
type JSONContent interface { JSON(json []byte) JSONContent JSONString(json string) JSONContent // JSONStruct requires struct, not pointer. // if receive invalid, error occurs when executing. JSONStruct(data interface{}) JSONContent Executor }
type Multipart ¶ added in v0.1.4
type Multipart interface { MultipartData(key string, value io.Reader, forceMultipart bool) Multipart MultipartAsFormFile(key string, fileName string, reader io.Reader, forceMultipart bool) Multipart Executor }
Multipart provides methods for set multipart data(including file)
type ResponseHandler ¶ added in v0.1.2
ResponseHandler provides wrapper methods with handling error(ex. http status code)
type TerminalOperator ¶
type TerminalOperator interface { Path(pathFmt string, args ...interface{}) TerminalOperator URLParam(key string, value string) TerminalOperator BasicAuth(username string, password string) TerminalOperator Header(key, value string) TerminalOperator // client Client(client *http.Client) TerminalOperator JSON(json []byte) JSONContent JSONString(json string) JSONContent // JSONStruct requires struct, not pointer. // if receive invalid, error occurs when executing. JSONStruct(data interface{}) JSONContent // URLEncoded add value if same key URLEncoded(key string, value string) URLEncoded // URLEncodedList replace values if same key URLEncodedList(key string, values []string) URLEncoded // URLEncodedEscapedString receives raw data, but never check URLEncodedEscapedString(data string) URLEncoded URLEncodedString(data string) URLEncoded MultipartData(key string, value io.Reader, forceMultipart bool) Multipart MultipartAsFormFile(key string, fileName string, reader io.Reader, forceMultipart bool) Multipart // HandleResponse require response handler, // if create a new response, MUST close old res.Body HandleResponse(func(*http.Request, *http.Response) (*http.Response, error)) ResponseHandler Executor }
TerminalOperator executes web api and process result
func Get ¶
func Get(baseURL string) TerminalOperator
Get requires base url for reuse this instance. BaseURL includes protocol like `http://` or `https://` ex. https://api.github.com/repos/
func Post ¶
func Post(baseURL string) TerminalOperator
Post requires base url for reuse this instance. BaseURL includes protocol like `http://` or `https://` ex. https://api.github.com/repos/
func Put ¶ added in v0.1.2
func Put(baseURL string) TerminalOperator
type URLEncoded ¶
type URLEncoded interface { // URLEncoded add value if same key URLEncoded(key string, value string) URLEncoded // URLEncodedList replace values if same key URLEncodedList(key string, values []string) URLEncoded // URLEncodedEscapedString receives raw data, but never check URLEncodedEscapedString(data string) URLEncoded URLEncodedString(data string) URLEncoded Executor }
URLEncoded provides methods for sets url encoded body
Click to show internal directories.
Click to hide internal directories.