Генерация подписанного URL для AWS S3

Я пытаюсь создать подписанный URL для AWS S3, мне просто нужен URL-адрес для файла в моем хранилище, я не хочу использовать его для загрузки / выгрузки.

Я попробовал AFNetworking, следуя инструкциям документации Amazons, и теперь использую AWS iOS SDK.

Пока у меня есть это:

AWSStaticCredentialsProvider *credentialsProvider = [AWSStaticCredentialsProvider        credentialsWithAccessKey:@"Access Key" secretKey:@"secret key"];
AWSServiceConfiguration *configuration = [AWSServiceConfiguration    configurationWithRegion:AWSRegionUSWest2  credentialsProvider:credentialsProvider];

[AWSServiceManager defaultServiceManager].defaultServiceConfiguration = configuration;
AWSS3PreSignedURLBuilder * urlBuilder  = [[AWSS3PreSignedURLBuilder alloc]       initWithConfiguration:configuration];

AWSS3GetPreSignedURLRequest *preSignedURLRequest = [AWSS3GetPreSignedURLRequest new];
preSignedURLRequest.bucket = @"bucket-name";
preSignedURLRequest.key = @"/filename";
preSignedURLRequest.HTTPMethod = AWSHTTPMethodGET;
preSignedURLRequest.expires = [NSDate dateWithTimeIntervalSinceNow:3600];

 NSURL *preSignedURL = [urlBuilder getPreSignedURL:preSignedURLRequest];

NSLog(@"%@", preSignedURL);

Я получаю много ошибок об устаревании кода, но что более важно: я знаю, что метод getPreSignedURL возвращает тип (AWSTask *), мой вопрос заключается в том, как превратить AWSTask в подписанный URL-адрес?

Также я не планирую оставлять ключи в своем коде, это просто временно для тестирования.

Если бы кто-нибудь мог помочь мне найти, как получить preSignedURL, это было бы очень полезно. Спасибо

3 ответа

Решение

Вы пробовали S3BackgroundTransfer-Sample? Это должно помочь вам начать.

Вы можете проверить Укрощение инфраструктуры AWS, чтобы загрузить большой файл на S3, он также охватывает создание предварительно подписанного URL в swift

Я предполагаю, что вы пытаетесь справиться с фоновой загрузкой / загрузкой. Для этого вы можете использовать AWSS3TransferUtility,

Вы можете прочитать более подробную информацию на http://docs.aws.amazon.com/mobile/sdkforios/developerguide/s3transferutility.html

Другие вопросы по тегам