hashicorp / go-retryablehttp

Retryable HTTP client in Go
Mozilla Public License 2.0
1.99k stars 251 forks source link

Properly parsing request body when `http.NoBody` is used #168

Open tjasko opened 2 years ago

tjasko commented 2 years ago

This fix corrects a behavior when http.NoBody is used as the request body, as currently, the retryablehttp.getBodyReaderAndContentLength() function will return a ReaderFunc that when called returns an io.Reader, that will output a literal "0" string on the wire as the HTTP request body.

As such, a fix & test has been implemented to no-op when http.NoBody is used.

This issue was found as I was testing this library when a POST request was being done with no request body.

hashicorp-cla commented 2 years ago

CLA assistant check
All committers have signed the CLA.