如何使用iOS SDK将AWS S3文件从一个bucket复制到另一个bucket
我使用的是AWS iOS SDK,能够完成教程中概述的上传/下载文件操作。现在我正试图从一个bucket复制一个文件并粘贴到另一个bucket中。我拥有这两个水桶,可以使用它们。我还想在复制文件后从第一个bucket中删除该文件(从技术上讲,这是一个剪切粘贴操作),但我假设这样做的方式是复制、粘贴、删除原始文件 经过一些挖掘之后,似乎可以通过AWSS3-uploadPartCopy:函数来实现这一点。该函数似乎使用了一个AWSS3UploadPartCopyRquest对象,该对象有3个相关的输入属性,即目标bucket(bucket)、目标键(key)和源位置(replicateSource),这似乎是要复制的对象位置的URL 在我看来,对于这样一个函数来说,这似乎是一种非常奇怪的格式,我也不熟悉上传一个部件的含义,即,这是否必须是多部件上传的一部分?调用uploadPartCopy之前是否需要启动多部分上载如何使用iOS SDK将AWS S3文件从一个bucket复制到另一个bucket,ios,amazon-web-services,amazon-s3,Ios,Amazon Web Services,Amazon S3,我使用的是AWS iOS SDK,能够完成教程中概述的上传/下载文件操作。现在我正试图从一个bucket复制一个文件并粘贴到另一个bucket中。我拥有这两个水桶,可以使用它们。我还想在复制文件后从第一个bucket中删除该文件(从技术上讲,这是一个剪切粘贴操作),但我假设这样做的方式是复制、粘贴、删除原始文件 经过一些挖掘之后,似乎可以通过AWSS3-uploadPartCopy:函数来实现这一点。该函数似乎使用了一个AWSS3UploadPartCopyRquest对象,该对象有3个相关的输
我也不确定这是不是解决这个问题的方法。对于一项相对简单的任务来说,这似乎是一个过于复杂的解决方案。我在这里走对了吗?复制对象有两种操作:和。如果对象不是太大,则映射到的“PUT object-Copy”更容易实现
此外,Amazon S3还具有此功能,如果您的两个bucket不在同一区域,它会自动复制对象。复制对象有两种操作:和。如果对象不是太大,则映射到的“PUT object-Copy”更容易实现
另外,AmazonS3还有一个功能,如果您的两个bucket不在同一个区域,它会自动复制对象。请参阅下面的代码。它为您提供了将数据从一个bucket复制到另一个bucket的详细信息。在我的例子中,我想从同一个bucket复制多个图像
NSString *sourceBucket = @"treedev1234";
NSString *destinationBucket = @"treedev1234";
AWSS3 *s3 = [AWSS3 defaultS3];
AWSS3ReplicateObjectRequest *replicateRequest = [AWSS3ReplicateObjectRequest new];
for(int i = 0;i<feedModel.imageCount;i++){
replicateRequest.bucket = destinationBucket;
replicateRequest.key = [NSString stringWithFormat:@"posts/%d/%d.jpg",newpostid,i];
replicateRequest.replicateSource = [NSString stringWithFormat:@"%@/posts/%d/%d.jpg",sourceBucket,oldpostid,i];
replicateRequest.ACL = AWSS3ObjectCannedACLPublicReadWrite;
[[s3 replicateObject:replicateRequest] continueWithBlock:^id(AWSTask *task) {
if(task.error)
NSLog(@"The share request failed. error: [%@]", task.error);
return nil;
}];
NSString*sourceBucket=@“treedev1234”;
NSString*destinationBucket=@“treedev1234”;
AWSS3*s3=[AWSS3 defaultS3];
AWSS3ReplicateObjectRequest*replicateRequest=[AWSS3ReplicateObjectRequest new];
对于(int i=0;i只需参考下面的代码。它为您提供了将数据从一个bucket复制到另一个bucket的详细信息。在我的示例中,我希望从同一个bucket复制多个图像
NSString *sourceBucket = @"treedev1234";
NSString *destinationBucket = @"treedev1234";
AWSS3 *s3 = [AWSS3 defaultS3];
AWSS3ReplicateObjectRequest *replicateRequest = [AWSS3ReplicateObjectRequest new];
for(int i = 0;i<feedModel.imageCount;i++){
replicateRequest.bucket = destinationBucket;
replicateRequest.key = [NSString stringWithFormat:@"posts/%d/%d.jpg",newpostid,i];
replicateRequest.replicateSource = [NSString stringWithFormat:@"%@/posts/%d/%d.jpg",sourceBucket,oldpostid,i];
replicateRequest.ACL = AWSS3ObjectCannedACLPublicReadWrite;
[[s3 replicateObject:replicateRequest] continueWithBlock:^id(AWSTask *task) {
if(task.error)
NSLog(@"The share request failed. error: [%@]", task.error);
return nil;
}];
NSString*sourceBucket=@“treedev1234”;
NSString*destinationBucket=@“treedev1234”;
AWSS3*s3=[AWSS3 defaultS3];
AWSS3ReplicateObjectRequest*replicateRequest=[AWSS3ReplicateObjectRequest new];
对于(int i=0;我觉得我在这里遗漏了一些东西;您提供的链接解释了这些操作如何以其他语言工作。我正在尝试使用iOS SDK从iOS应用程序执行此操作。我觉得我在这里遗漏了一些东西;您提供的链接解释了这些操作如何以其他语言工作。我正在尝试执行此操作使用iOS SDK从iOS应用程序执行的操作。