Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios7 如何在objective C中设置S3ListObjectsRequest.marker以在Amazon S3中获得下一批结果?_Ios7_Amazon S3 - Fatal编程技术网

Ios7 如何在objective C中设置S3ListObjectsRequest.marker以在Amazon S3中获得下一批结果?

Ios7 如何在objective C中设置S3ListObjectsRequest.marker以在Amazon S3中获得下一批结果?,ios7,amazon-s3,Ios7,Amazon S3,当一个桶中有1000多个文件时,我试图获取所有文件的列表。我试过了,但没用 @try { S3ListObjectsRequest *req = [[S3ListObjectsRequest alloc] initWithName:bucketName]; req.maxKeys = 2000; // Didn't do anything! S3ListObjectsResponse *resp = [self.s3 listObjects:req]; NSMut

当一个桶中有1000多个文件时,我试图获取所有文件的列表。我试过了,但没用

@try {
    S3ListObjectsRequest *req = [[S3ListObjectsRequest alloc] initWithName:bucketName];
    req.maxKeys = 2000; // Didn't do anything!
    S3ListObjectsResponse *resp = [self.s3 listObjects:req];
    NSMutableArray* objectSummaries = resp.listObjectsResult.objectSummaries;
    NSLog(@" Found a total of %d files\n",[objectSummaries count]);
    // Also didn't work
    if (resp.listObjectsResult.isTruncated) {
        req.marker = [objectSummaries objectAtIndex:999];
        S3ListObjectsResponse *resp = [self.s3 listObjects:req];
        NSMutableArray* objectSummaries = resp.listObjectsResult.objectSummaries;
        NSLog(@" Found another %d files\n",[objectSummaries count]);
    }

}

通过如下方式设置marker/lastKey找到答案

NSString *lastKey = @"";
// For first 1000
for (S3ObjectSummary *objectSummary in listObjectsResults.objectSummaries) {
        [objects addObject:[objectSummary key]];
        lastKey = [objectSummary key];
}

// note: got lastKey above!
while (listObjectsResults.isTruncated) {
        req = [[S3ListObjectsRequest alloc] initWithName:[self soundBucket]];
        req.marker = lastKey;
.......