OSS iOS SDK 支持签名特定有效时长或者公开的 URL,用于转给第三方实现授权访问。
签名私有资源指定有效时长的访问URL
如果 Bucket 或 Object 为私有,您需要调用以下接口获取签名后的 URL:
NSString * constrainURL = nil;
// sign constrain url
OSSTask * task = [client presignConstrainURLWithBucketName:@"<bucket name>"
withObjectKey:@"<object key>"
withExpirationInterval: 30 * 60];
if (!task.error) {
constrainURL = task.result;
} else {
NSLog(@"error: %@", task.error);
}
签名公开的访问URL
如果 Bucket 或 Object 为公共可读,您需要调用以下接口获取可公开访问 Object 的 URL:
NSString * publicURL = nil;
// sign public url
task = [client presignPublicURLWithBucketName:@"<bucket name>"
withObjectKey:@"<object key>"];
if (!task.error) {
publicURL = task.result;
} else {
NSLog(@"sign url error: %@", task.error);
}