Генерация подписанного 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