本文档介绍如何列举存储空间(Bucket)中的所有文件(Object)。
以下代码用于列举存储空间中的所有文件:
OSSGetBucketRequest * getBucket = [OSSGetBucketRequest new];
getBucket.bucketName = @"<bucketName>";
// 以下参数为可选参数,具体含义及说明请参见下表。
// getBucket.marker = @"";
// getBucket.maxKeys = @"";
// getBucket.prefix = @"";
// getBucket.delimiter = @"";
OSSTask * getBucketTask = [client getBucket:getBucket];
[getBucketTask continueWithBlock:^id(OSSTask *task) {
if (!task.error) {
OSSGetBucketResult * result = task.result;
NSLog(@"get bucket success!");
for (NSDictionary * objectInfo in result.contents) {
NSLog(@"list object: %@", objectInfo);
}
} else {
NSLog(@"get bucket failed, error: %@", task.error);
}
return nil;
}];
可选参数的名称和作用如下:
参数 | 描述 |
---|---|
delimiter | 对文件名称进行分组的一个字符。所有名称包含指定的前缀且第一次出现 delimiter 字符之间的文件作为一组(commonPrefixes)。 |
prefix | 限定返回的文件必须以 prefix 作为前缀。 |
maxKeys | 限定此次列举文件的最大个数。默认值为 100,最大值为 1000。 |
marker | 列举指定 marker 之后的文件。 |
有关可选参数的更多信息,请参见GetBucket (ListObjects)。