Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def curl_post(self, path, body=None, params=None, extra_headers=None, files=None):
- import pycurl
- from io import BytesIO
- params = params or {}
- headers = {'Accept': 'application/json', 'User-Agent':self.SDK_VERSION, 'Content-type':'application/json'}
- if extra_headers:
- headers.update(extra_headers)
- uri = self.make_path(path)
- curl_headers = []
- for key, value in headers.items():
- curl_headers.append('{}:{}'.format(key, value))
- # PycURl
- full_url = os.path.join(uri, '?access_token={}'.format(params['access_token']))
- curl = pycurl.Curl()
- data = BytesIO()
- curl.setopt(pycurl.URL, full_url)
- curl.setopt(pycurl.HTTPHEADER, curl_headers)
- curl.setopt(pycurl.HTTPPOST, [
- ('file', (
- pycurl.FORM_FILE, files['fullpath']
- )),
- ])
- curl.setopt(pycurl.VERBOSE, 1)
- curl.setopt(pycurl.WRITEFUNCTION, data.write)
- curl.setopt(pycurl.FOLLOWLOCATION, 1)
- curl.setopt(pycurl.MAXREDIRS, 5)
- curl.perform()
- curl.close()
- print(data.getvalue())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement