github.com/wtfutil/wtf@v0.43.0/modules/twitter/request.go (about) 1 package twitter 2 3 import ( 4 "bytes" 5 "net/http" 6 ) 7 8 func Request(httpClient *http.Client, apiURL string) ([]byte, error) { 9 resp, err := httpClient.Get(apiURL) 10 if err != nil { 11 return nil, err 12 } 13 defer func() { _ = resp.Body.Close() }() 14 15 data, err := ParseBody(resp) 16 if err != nil { 17 return nil, err 18 } 19 20 return data, err 21 } 22 23 func ParseBody(resp *http.Response) ([]byte, error) { 24 var buffer bytes.Buffer 25 _, err := buffer.ReadFrom(resp.Body) 26 if err != nil { 27 return nil, err 28 } 29 30 return buffer.Bytes(), nil 31 }