def request(self, method, url, headers=None, body=None): """A simple HTTP request interface.""" self.http_obj = http.ClosingHttp() if headers is None: headers = {} # Authorize the request req_url, req_headers, req_body = self.auth_provider.auth_request( method=method, url=url, headers=headers, body=body, filters=self.filters) self._log_request(method, req_url, headers, body) # use original body resp, resp_body = self.http_obj.request(req_url, method, headers=req_headers, body=req_body) self._log_response(resp, resp_body) if resp.status == 401 or resp.status == 403: raise exceptions.Unauthorized() return resp, resp_body
def request(self, method, url, extra_headers=False, headers=None, body=None): """A simple HTTP request interface.""" self.http_obj = http.ClosingHttp() if headers is None: headers = {} elif extra_headers: try: headers.update(self.get_headers()) except (ValueError, TypeError): headers = {} # Authorize the request req_url, req_headers, req_body = self.auth_provider.auth_request( method=method, url=url, headers=headers, body=body, filters=self.filters) # use original body resp, resp_body = self.http_obj.request(req_url, method, headers=req_headers, body=req_body) self._log_request(method, req_url, resp) if resp.status == 401 or resp.status == 403: raise exceptions.Unauthorized() return resp, resp_body
def request(self, method, url, headers=None, body=None, wait=None): """Overriding the existing HTTP request in super class RestClient.""" dscv = CONF.identity.disable_ssl_certificate_validation self.http_obj = http.ClosingHttp( disable_ssl_certificate_validation=dscv) return super(PolicyClientXML, self).request(method, url, headers=headers, body=body)
def request(self, method, url, headers=None, body=None, wait=None): """Overriding the existing HTTP request in super class RestClient.""" dscv = self.config.identity.disable_ssl_certificate_validation self.http_obj = http.ClosingHttp( disable_ssl_certificate_validation=dscv) self._set_auth() self.base_url = self.base_url.replace( urlparse(self.base_url).path, "/v3") return super(PolicyClientXML, self).request(method, url, headers=headers, body=body)
def request(self, method, url, extra_headers=False, headers=None, body=None, wait=None): """Overriding the existing HTTP request in super class RestClient.""" if extra_headers: try: headers.update(self.get_headers()) except (ValueError, TypeError): headers = self.get_headers() dscv = CONF.identity.disable_ssl_certificate_validation self.http_obj = http.ClosingHttp( disable_ssl_certificate_validation=dscv) return super(RegionClientXML, self).request(method, url, extra_headers, headers=headers, body=body)
def test_swift_acl_anonymous_download(self): """This test will cover below steps: 1. Create container 2. Upload object to the new container 3. Change the ACL of the container 4. Check if the object can be download by anonymous user 5. Delete the object and container """ container_name = self.create_container() obj_name, _ = self.upload_object_to_container(container_name) obj_url = '%s/%s/%s' % (self.object_client.base_url, container_name, obj_name) http_client = http.ClosingHttp() resp, _ = http_client.request(obj_url, 'GET') self.assertEqual(resp.status, 401) self.change_container_acl(container_name, '.r:*') resp, _ = http_client.request(obj_url, 'GET') self.assertEqual(resp.status, 200)
def __init__(self, auth_provider): self.auth_provider = auth_provider self.endpoint_url = None self.service = None # The version of the API this client implements self.api_version = None self._skip_path = False self.build_interval = CONF.compute.build_interval self.build_timeout = CONF.compute.build_timeout self.general_header_lc = set( ('cache-control', 'connection', 'date', 'pragma', 'trailer', 'transfer-encoding', 'via', 'warning')) self.response_header_lc = set( ('accept-ranges', 'age', 'etag', 'location', 'proxy-authenticate', 'retry-after', 'server', 'vary', 'www-authenticate')) dscv = CONF.identity.disable_ssl_certificate_validation self.http_obj = http.ClosingHttp( disable_ssl_certificate_validation=dscv)
def request(self, method, url, headers=None, body=None): """A simple HTTP request interface.""" dscv = self.config.identity.disable_ssl_certificate_validation self.http_obj = http.ClosingHttp( disable_ssl_certificate_validation=dscv) if headers is None: headers = {} self._log_request(method, url, headers, body) resp, resp_body = self.http_obj.request(url, method, headers=headers, body=body) self._log_response(resp, resp_body) if resp.status in (401, 403): resp_body = json.loads(resp_body) raise exceptions.Unauthorized(resp_body['error']['message']) return resp, resp_body
def request(self, method, url, headers=None, body=None): """A simple HTTP request interface.""" dscv = self.config.identity.disable_ssl_certificate_validation self.http_obj = http.ClosingHttp( disable_ssl_certificate_validation=dscv) if headers is None: headers = {} if self.base_url is None: self._set_auth() req_url = "%s/%s" % (self.base_url, url) self._log_request(method, req_url, headers, body) resp, resp_body = self.http_obj.request(req_url, method, headers=headers, body=body) self._log_response(resp, resp_body) if resp.status == 401 or resp.status == 403: raise exceptions.Unauthorized() return resp, resp_body
def request(self, method, url, headers=None, body=None): """A simple HTTP request interface.""" self.http_obj = http.ClosingHttp() if headers is None: headers = {} if self.base_url is None: self._set_auth() req_url = "%s/%s" % (self.base_url, url) self._log_request(method, req_url, headers, body) resp, resp_body = self.http_obj.request(req_url, method, headers=headers, body=body) self._log_response(resp, resp_body) if resp.status == 401 or resp.status == 403: raise exceptions.Unauthorized() return resp, resp_body
def __init__(self, config, user, password, auth_url, tenant_name=None, auth_version='v2'): self.config = config self.user = user self.password = password self.auth_url = auth_url self.tenant_name = tenant_name self.auth_version = auth_version self.service = CONF.magnetodb.service_type self.token = None self.base_url = None self.region = {} for cfgname in dir(self.config): # Find all config.FOO.catalog_type and assume FOO is a service. cfg = getattr(self.config, cfgname) catalog_type = getattr(cfg, 'catalog_type', None) if not catalog_type: continue service_region = getattr(cfg, 'region', None) if not service_region: service_region = self.config.identity.region self.region[catalog_type] = service_region self.endpoint_url = 'publicURL' self.headers = {'Content-Type': 'application/%s' % self.TYPE, 'Accept': 'application/%s' % self.TYPE} self.build_interval = config.compute.build_interval self.build_timeout = config.compute.build_timeout self.general_header_lc = set(('cache-control', 'connection', 'date', 'pragma', 'trailer', 'transfer-encoding', 'via', 'warning')) self.response_header_lc = set(('accept-ranges', 'age', 'etag', 'location', 'proxy-authenticate', 'retry-after', 'server', 'vary', 'www-authenticate')) dscv = self.config.identity.disable_ssl_certificate_validation self.http_obj = http.ClosingHttp( disable_ssl_certificate_validation=dscv)
def request(self, method, url, headers=None, body=None): """A simple HTTP request interface.""" dscv = CONF.identity.disable_ssl_certificate_validation self.http_obj = http.ClosingHttp( disable_ssl_certificate_validation=dscv) if headers is None: headers = {} # Authorize the request req_url, req_headers, req_body = self.auth_provider.auth_request( method=method, url=url, headers=headers, body=body, filters=self.filters ) # Use original method self._log_request(method, req_url, headers, body) resp, resp_body = self.http_obj.request(req_url, method, headers=req_headers, body=req_body) self._log_response(resp, resp_body) if resp.status == 401 or resp.status == 403: raise exceptions.Unauthorized() return resp, resp_body