Skip to content

Commit c24c6b1

Browse files
author
Paul Chang
committed
Fix request_rest to support absolute URLs (closes anvilco#79)
1 parent 28e4d3f commit c24c6b1

1 file changed

Lines changed: 9 additions & 3 deletions

File tree

python_anvil/api_resources/requests.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,11 @@ def _request(self, method, url, **kwargs):
2020
if method.upper() not in ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"]:
2121
raise ValueError("Invalid HTTP method provided")
2222

23-
full_url = "/".join([self.get_url(), url]) if len(url) > 0 else self.get_url()
23+
absolute_url = kwargs.pop("absolute_url", False)
24+
if absolute_url:
25+
full_url = url
26+
else:
27+
full_url = "/".join([self.get_url(), url]) if len(url) > 0 else self.get_url()
2428

2529
return self._client.request(method, full_url, **kwargs)
2630

@@ -64,16 +68,18 @@ def get_url(self):
6468

6569
def get(self, url, params=None, **kwargs):
6670
retry = kwargs.pop("retry", True)
71+
absolute_url = kwargs.pop("absolute_url", False)
6772
content, status_code, headers = self._request(
68-
"GET", url, params=params, retry=retry
73+
"GET", url, params=params, retry=retry, absolute_url=absolute_url
6974
)
7075
return self.process_response(content, status_code, headers, **kwargs)
7176

7277
def post(self, url, data=None, **kwargs):
7378
retry = kwargs.pop("retry", True)
79+
absolute_url = kwargs.pop("absolute_url", False)
7480
params = kwargs.pop("params", None)
7581
content, status_code, headers = self._request(
76-
"POST", url, json=data, retry=retry, params=params
82+
"POST", url, json=data, retry=retry, params=params, absolute_url=absolute_url
7783
)
7884
return self.process_response(content, status_code, headers, **kwargs)
7985

0 commit comments

Comments
 (0)