in airavata_django_portal_sdk/remoteapi.py [0:0]
def call(request,
path,
path_params=None,
method="get",
raise_for_status=True,
base_url="/api",
**kwargs):
headers = {
'Authorization': f'Bearer {request.authz_token.accessToken}'}
encoded_path_params = {}
if path_params is not None:
for pk, pv in path_params.items():
encoded_path_params[pk] = quote(pv)
encoded_path = path.format(**encoded_path_params)
logger.debug(f"encoded_path={encoded_path}")
remote_api_url = settings.GATEWAY_DATA_STORE_REMOTE_API
if remote_api_url.endswith("/api"):
warnings.warn(f"Set GATEWAY_DATA_STORE_REMOTE_API to \"{remote_api_url}\". /api is no longer needed.", DeprecationWarning)
remote_api_url = remote_api_url[0:remote_api_url.rfind("/api")]
r = requests.request(
method,
f'{remote_api_url}{base_url}{encoded_path}',
headers=headers,
**kwargs,
)
if raise_for_status:
r.raise_for_status()
return r