Copying a Part
API Description
After a multipart upload is initialized, you can use this API to copy a part of a multipart upload task to a specified bucket.
Method Definition
ObsClient.copyPart(bucketName, objectKey, partNumber, uploadId, copySource, copySourceRange, destSseHeader, sourceSseHeader)
Request Parameters
|
Field |
Type |
Optional or Mandatory |
Description |
|---|---|---|---|
|
bucketName |
str |
Mandatory |
Bucket name |
|
objectKey |
str |
Mandatory |
Object name |
|
partNumber |
int |
Mandatory |
Part number, which ranges from 1 to 10000 |
|
uploadId |
str |
Mandatory |
Multipart upload ID |
|
copySource |
str |
Mandatory |
Parameter used to specify the source bucket, source object, and source object version ID which can be null. It is in the format of SourceBucketName/SourceObjectName?versionId=SourceObjectVersionId. |
|
copySourceRange |
str |
Optional |
Copy range of the source object. The value range is [0, source object length-1] and is in the format of bytes=x-y. If the maximum length of copySourceRange is larger than the length of the source object minus 1, the length of the source object minus 1 is used. |
|
destSseHeader |
or |
Optional |
Header for server-side encryption. It is used to encrypt the target object. |
|
sourceSseHeader |
Optional |
Header for server-side decryption. It is used to decrypt the source object. |
Returned Results
|
Type |
Description |
|---|---|
|
SDK common result object |
|
GetResult.body Type |
Description |
|---|---|
|
Response result of the request for copying a part |
Sample Code
try:
resp = obsClient.copyPart('bucketname', 'objectkey', 'partNumber', 'uploadid', 'sourcebucketname/sourceobjectkey', '0-15')
if resp.status < 300:
print('requestId:', resp.requestId)
print('etagValue:', resp.body.etagValue)
print('modifiedDate:', resp.body.modifiedDate)
else:
print('errorCode:', resp.errorCode)
print('errorMessage:', resp.errorMessage)
except:
import traceback
print(traceback.format_exc())
Last Article: Merging Parts
Next Article: Aborting a Multipart Upload
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.