您可以将文件从一个存储空间(源存储空间)拷贝到同一地域的另一个存储空间(目标存储空间)中。

以下代码用于拷贝文件。

OSSCopyObjectRequest * copy = [OSSCopyObjectRequest new];
copy.bucketName = @<bucketName>;
// objectKey等同于objectName,表示从源Bucket拷贝文件时时需要指定包含文件后缀在内的完整路径,例如abc/efg/123.jpg
copy.objectKey = @"<objectKey>";
copy.sourceCopyFrom = [NSString stringWithFormat:@"/%@/%@", @"<bucketName>, @"<objectKey_copyFrom>"];

OSSTask * task = [client copyObject:copy];

[task continueWithBlock:^id(OSSTask *task) {
    if (!task.error) {
        // ...
    }
    return nil;s
}];
		
说明
  • 源Object和目标Object必须属于同一地域。
  • 如果拷贝操作的源Object地址和目标Object地址相同,可以修改已有文件元信息。
  • 拷贝文件大小不能超过1G,超过1G需使用Multipart Upload等操作。