Skip to content

Commit 801cea9

Browse files
author
Barkholenka Raman
committed
send files via transport
1 parent 7e02855 commit 801cea9

File tree

1 file changed

+13
-7
lines changed

1 file changed

+13
-7
lines changed

pyadmitad/transport.py

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -52,28 +52,28 @@ def prepare_request_data(
5252

5353
def api_request(
5454
url, data=None, headers=None, method='GET',
55-
timeout=None, ssl_verify=False, debug=False):
55+
files=None, timeout=None, ssl_verify=False, debug=False):
5656
kwargs = prepare_request_data(
5757
data=data, headers=headers, method=method,
5858
timeout=timeout, ssl_verify=ssl_verify)
5959
status_code = 500
6060
content = u''
6161
try:
62-
response = requests.request(method, url, **kwargs)
62+
response = requests.request(method, url, files=files, **kwargs)
6363
debug_log(u'Request url: %s' % response.url, debug)
64-
if method == 'POST':
65-
debug_log(u'Request body: %s' % response.request.body, debug)
64+
# if method == 'POST':
65+
# debug_log(u'Request body: %s' % response.request.body, debug)
6666
status_code = response.status_code
6767
content = response.content
6868
if status_code >= 400:
6969
response.raise_for_status()
70-
return response.json()
7170
except requests.HTTPError as err:
7271
raise HttpException(status_code, to_json(content), err)
7372
except requests.RequestException as err:
7473
raise ConnectionException(err)
7574
except (ValueError, TypeError) as err:
7675
raise JsonException(err)
76+
return response.json()
7777

7878

7979
def get_credentials(client_id, client_secret):
@@ -364,12 +364,13 @@ def to_value(self):
364364

365365
class HttpTransport(object):
366366

367-
SUPPORTED_METHODS = ('GET', 'POST')
367+
SUPPORTED_METHODS = ('GET', 'POST', 'DELETE')
368368
SUPPORTED_LANGUAGES = ('ru', 'en', 'de', 'pl')
369369

370370
def __init__(self, access_token, method=None, user_agent=None, debug=False):
371371
self._headers = build_headers(access_token, user_agent=user_agent)
372372
self._method = method or 'GET'
373+
self._files = None
373374
self._data = None
374375
self._url = None
375376
self._language = None
@@ -392,6 +393,10 @@ def set_data(self, data):
392393
self._data = data
393394
return self
394395

396+
def set_files(self, files):
397+
self._files = files
398+
return self
399+
395400
def clean_data(self):
396401
self._data = None
397402
return self
@@ -453,7 +458,8 @@ def request(self, **kwargs):
453458
'method': self._method,
454459
'headers': self._headers,
455460
'data': self._data,
456-
'debug': self._debug
461+
'debug': self._debug,
462+
'files': self._files,
457463
}
458464
response = self.api_request(self._url, **requests_kwargs)
459465
return kwargs.get('handler', self._handle_response)(response)

0 commit comments

Comments
 (0)