diff --git a/internal/httpclient/client.go b/internal/httpclient/client.go index 45f0c3447..b011b7b33 100644 --- a/internal/httpclient/client.go +++ b/internal/httpclient/client.go @@ -153,6 +153,11 @@ func New(cfg Config) *Client { // as the standard http.Client{}.Do() implementation except that response body will // be wrapped by an io.LimitReader() to limit response body sizes. func (c *Client) Do(req *http.Request) (*http.Response, error) { + // Ensure this is a valid request + if err := ValidateRequest(req); err != nil { + return nil, err + } + // Get host's wait queue wait := c.wait(req.Host) @@ -198,11 +203,6 @@ func (c *Client) Do(req *http.Request) (*http.Response, error) { } } - // Firstly, ensure this is a valid request - if err := ValidateRequest(req); err != nil { - return nil, err - } - // Perform the HTTP request rsp, err := c.client.Do(req) if err != nil {