in libs/http_controller.py [0:0]
def api_request(self, method, endpoint, response_type="json", **kwargs):
"""
Generic REST API Controller.
"""
r = None
session = requests.Session()
adapter = requests.adapters.HTTPAdapter(max_retries=self.max_retries)
api_endpoint = self.base_url + endpoint
session.mount(api_endpoint, adapter)
try:
r = getattr(session, method)(url=api_endpoint,
timeout=self.timeout_secs,
proxies=self.proxy_info, **kwargs)
except (requests.exceptions.ConnectionError, requests.exceptions.RequestException,
AttributeError, TypeError) as e:
print(e)
if response_type == "json":
return r.json()
elif response_type == "text":
return r.text
elif response_type == "xml":
return r.content