request executes the configured request or returns the cached value
(url string, body string)
| 201 | |
| 202 | // request executes the configured request or returns the cached value |
| 203 | func (p *HTTP) request(url string, body string) ([]byte, error) { |
| 204 | var b io.Reader |
| 205 | if p.method != http.MethodGet { |
| 206 | b = strings.NewReader(body) |
| 207 | } |
| 208 | |
| 209 | url = util.DefaultScheme(url, "http") |
| 210 | |
| 211 | // empty method becomes GET |
| 212 | req, err := request.New(p.method, url, b, p.headers) |
| 213 | if err != nil { |
| 214 | return []byte{}, err |
| 215 | } |
| 216 | |
| 217 | val, err := p.DoBody(req) |
| 218 | if err != nil { |
| 219 | if err2 := knownErrors(val); err2 != nil { |
| 220 | err = err2 |
| 221 | } |
| 222 | } |
| 223 | |
| 224 | return val, err |
| 225 | } |
| 226 | |
| 227 | var _ Getters = (*HTTP)(nil) |
| 228 |
no test coverage detected