Skip to content

Commit ddf5e9b

Browse files
author
Hugo Osvaldo Barrera
committed
Make sure we pass all args to requests.session
1 parent 6870bc9 commit ddf5e9b

1 file changed

Lines changed: 8 additions & 8 deletions

File tree

mercadopago/http/http_client.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,19 @@ class HttpClient():
1111
Default implementation to call all REST API's
1212
"""
1313

14-
@staticmethod
15-
def __get_session(max_retries):
14+
def request(self, method, url, maxretries=None, **kwargs):
15+
"""Makes a call to the API.
16+
17+
All **kwargs are passed verbatimm to ``requests.request``.
18+
"""
1619
retry_strategy = Retry(
17-
total=max_retries,
20+
total=maxretries,
1821
status_forcelist=[429, 500, 502, 503, 504]
1922
)
2023
http = requests.Session()
2124
http.mount("https://", HTTPAdapter(max_retries=retry_strategy))
22-
return http
23-
24-
def request(self, method, url, headers, data=None, params=None, timeout=None, maxretries=None): # pylint: disable=missing-function-docstring, too-many-arguments
25-
with self.__get_session(maxretries) as session:
26-
api_result = session.request(method, url, params=params, headers=headers, timeout=timeout)
25+
with http as session:
26+
api_result = session.request(method, url, **kwargs)
2727
response = {
2828
"status": api_result.status_code,
2929
"response": api_result.json()

0 commit comments

Comments
 (0)