def execute(self):
# get signature
query_str = 'partNumber=' + self.part_number + '&uploadId=' + self.upload_id
auth = DSSAuth(self.http_method, self.access_key, self.secret_key, self.dss_op_path, query_str = self.dss_query_str_for_signature, content_type = 'application/octet-stream')
signature = auth.get_signature()
self.http_headers['Authorization'] = signature
self.http_headers['Date'] = formatdate(usegmt=True)
statinfo = os.stat(self.local_file_name)
self.http_headers['Content-Length'] = statinfo.st_size
self.http_headers['Content-Type'] = 'application/octet-stream'
# construct request
request_url = self.dss_url + self.dss_op_path
if(self.dss_query_str is not None):
request_url += '?' + self.dss_query_str
data = open(self.local_file_name, 'rb')
# make request
resp = requests.put(request_url, headers = self.http_headers, data=data, verify = self.is_secure_request)
return resp
评论列表
文章目录