12
我正在使用AWS IOS SDK并尝试列出文件夹中的所有文件。Amazon AWS IOS SDK:如何列出文件夹中的所有文件名称
此代码的工作列出一个桶中的所有文件等:
-(void) s3DirectoryListing: (NSString *) bucketName {
s3Client = [[AmazonS3Client alloc] initWithAccessKey:ACCESS_KEY withSecretKey:SECRET_KEY];
@try {
S3ListObjectsRequest *req = [[S3ListObjectsRequest alloc] initWithName:bucketName];
S3ListObjectsResponse *resp = [s3Client listObjects:req];
NSMutableArray* objectSummaries = resp.listObjectsResult.objectSummaries;
for (int x = 0; x < [objectSummaries count]; x++) {
NSLog(@"objectSummaries: %@",[objectSummaries objectAtIndex:x]);
}
}
@catch (NSException *exception) {
NSLog(@"Cannot list S3 %@",exception);
}
}
所以,如果我通过bucketName名字,这个工程。但是,如果我试图通过bucketName/FOLDERNAME“我得到一个错误信息。此代码似乎并不像桶和文件夹路径组合的组合。
任何想法表示赞赏。
太棒了。谢谢Viccari – Jeremy 2012-02-17 21:57:13
实际上,为了达到这个目的,你必须将前缀设置为“folderName1 /”。在阅读文档之前,我并不清楚前缀必须包含分隔符才能工作...... – vdaubry 2012-06-10 07:40:59
需要注意的另一件事:结果集被截断为1000.检查isTruncated标志并运行连续请求用一个标记来说明最后获得的物体。 – Stavash 2014-04-16 10:56:07