全部产品
Search
文档中心

对象存储 OSS:iOS获取文件元数据

更新时间:Jan 08, 2024

通过HeadObject方法可以只获取文件元数据而不获取文件内容。

注意事项

  • 文件元数据是对文件的属性描述,包括HTTP标准属性(HTTP Header)和用户自定义元数据(User Meta)两种。您可以通过设置HTTP标准属性来自定义HTTP请求的策略,例如文件(Object)缓存策略、强制下载策略等。您还可以通过设置用户自定义元数据来标识Object的用途或属性等。更多信息,请参见文件元数据

  • iOS SDK当前不支持设置和修改文件元数据。

示例代码

以下代码用于获取文件元数据:

OSSHeadObjectRequest * request = [OSSHeadObjectRequest new];
// 填写Bucket名称,例如examplebucket。
request.bucketName = @"examplebucket";
// 填写Object完整路径,完整路径中不能包含Bucket名称,例如exampledir/exampleobject.txt。
request.objectKey = @"exampledir/exampleobject.txt";

OSSTask * headTask = [client headObject:request];

[headTask continueWithBlock:^id(OSSTask *task) {
    if (!task.error) {
        NSLog(@"head object success!");
        OSSHeadObjectResult * result = task.result;
        NSLog(@"header fields: %@", result.httpResponseHeaderFields);
        for (NSString * key in result.objectMeta) {
            NSLog(@"ObjectMeta: %@ - %@", key, [result.objectMeta objectForKey:key]);
        }
    } else {
        NSLog(@"head object failed, error: %@" ,task.error);
    }
    return nil;
}];

相关文档

关于获取文件元数据的API接口说明,请参见GetObjectMeta