Example
func DoRequest(req *http.Request) (MyResponse, error) {
client := &http.Client{}
resp, err := client.Do(req)
if resp != nil {
defer resp.Body.Close()
}
if err != nil {
return nil, err
}
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
return nil, err
}
response := MyResponse{}
response.Header = resp.Header
...
response.Body = body
return response, nil
}
Execute flow
overview
send()
RoundTrip()
func (t *Transport) RoundTrip(req *Request) (*Response, error) {
return t.roundTrip(req)
}