def api_download(service, fileId, authorisation):
'''Given a Send url, download and return the encrypted data and metadata'''
data = tempfile.SpooledTemporaryFile(max_size=SPOOL_SIZE, mode='w+b')
headers = {'Authorization' : 'send-v1 ' + unpadded_urlsafe_b64encode(authorisation)}
url = service + 'api/download/' + fileId
r = requests.get(url, headers=headers, stream=True)
r.raise_for_status()
content_length = int(r.headers['Content-length'])
pbar = progbar(content_length)
for chunk in r.iter_content(chunk_size=CHUNK_SIZE):
data.write(chunk)
pbar.update(len(chunk))
pbar.close()
data.seek(0)
return data
评论列表
文章目录