in bugzilla/client/client.go [114:132]
func (c *Client) do(in api.Endpoint, out interface{}) error {
req, err := c.newRequest(in)
if err != nil {
return err
}
resp, err := c.inner.Do(req)
if err != nil {
return err
}
defer resp.Body.Close()
b, err := ioutil.ReadAll(resp.Body)
if err != nil {
return err
}
if resp.StatusCode != in.Expect() {
return errors.New(string(b))
}
return json.Unmarshal(b, out)
}