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);
}