s3.head: return useful data

This commit is contained in:
Matthew Williams 2015-05-22 00:14:36 +00:00 committed by rallytime
parent 79a809dd79
commit 1667d67c3e
2 changed files with 8 additions and 4 deletions

View file

@ -176,7 +176,8 @@ def head(bucket, path=None, key=None, keyid=None, service_url=None,
key=key,
keyid=keyid,
service_url=service_url,
verify_ssl=verify_ssl)
verify_ssl=verify_ssl,
full_headers=True)
def put(bucket, path=None, return_bin=False, action=None, local_file=None,

View file

@ -30,7 +30,7 @@ DEFAULT_LOCATION = 'us-east-1'
def query(key, keyid, method='GET', params=None, headers=None,
requesturl=None, return_url=False, bucket=None, service_url=None,
path='', return_bin=False, action=None, local_file=None,
verify_ssl=True, location=DEFAULT_LOCATION):
verify_ssl=True, location=DEFAULT_LOCATION, full_headers=False):
'''
Perform a query against an S3-like API. This function requires that a
secret key and the id for that key are passed in. For instance:
@ -183,7 +183,10 @@ def query(key, keyid, method='GET', params=None, headers=None,
if result.status_code != requests.codes.ok:
return
ret = {'headers': []}
for header in result.headers:
ret['headers'].append(header.strip())
if full_headers:
ret['headers'] = dict(result.headers)
else:
for header in result.headers:
ret['headers'].append(header.strip())
return ret