'A simple HTTP request interface.'

def _request(self, method, url, headers=None, body=None, chunked=False):

    (req_url, req_headers, req_body) = self.auth_provider.auth_request(method, url, headers, body, self.filters)
    start = time.time()
    self._log_request_start(method, req_url)
    (resp, resp_body) = self.raw_request(req_url, method, headers=req_headers, body=req_body, chunked=chunked)
    end = time.time()
    self._log_request(method, req_url, resp, secs=(end - start), req_headers=req_headers, req_body=req_body, resp_body=resp_body)
    self.response_checker(method, resp, resp_body)
    return (resp, resp_body)
