Do performs the given http request and fills the given http response.
Request must contain at least non-zero RequestURI with full url (including scheme and host) or non-zero Host header + RequestURI.
Client determines the server to be requested in the following order:
- from RequestURI if it contains full url with scheme and host; - from Host header otherwise.
The function doesn't follow redirects. Use Get* for following redirects.
Response is ignored if resp is nil.
ErrNoFreeConns is returned if all DefaultMaxConnsPerHost connections to the requested host are busy.
It is recommended obtaining req and resp via AcquireRequest and AcquireResponse in performance-critical code.