AWSS3TransferManagerUploadRequest получить URL ответа

Я использую v2 AWS iOS SDK для загрузки своих изображений на сервер, мой код я прямо вперед

 NSString * uniqueIdentifier = [[NSUUID UUID]UUIDString];

AWSS3TransferManagerUploadRequest *uploadRequest = [AWSS3TransferManagerUploadRequest new];
uploadRequest.bucket = @"my bucket";
uploadRequest.key = [NSString stringWithFormat:@"%@/images/%@.jpeg",objectId,uniqueIdentifier];
uploadRequest.ACL = AWSS3ObjectCannedACLPublicRead;

NSData * data = UIImageJPEGRepresentation(newImage, 0.8);

NSString *tmpDirectory = NSTemporaryDirectory();

NSString *tmpFile = [tmpDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.jpeg",uniqueIdentifier]];
NSLog(@"Temp File:%@", tmpFile);

[data writeToFile:tmpFile atomically:YES];

uploadRequest.body = [NSURL fileURLWithPath:tmpFile];

AWSS3TransferManager *transferManager = [AWSS3TransferManager defaultS3TransferManager];

[[transferManager upload:uploadRequest] continueWithExecutor:[BFExecutor defaultExecutor]
                                                   withBlock:^id(BFTask *task) {
                                                       if (task.error != nil) {
                                                           NSLog(@"%s %@","Error uploading :", uploadRequest.key);
                                                       }else {

                                                           AWSS3TransferManagerUploadOutput * output = task.result;


                                                           NSLog(@"Upload completed %@",[output description]);


                                                       }
                                                       return nil;
                                                   }];

после того, как я загружу файл в службу S3, где находится URL-адрес ответа? как узнать адрес этого изображения? Я хочу поместить изображение внутри объекта в БД.

Благодарность


person Janub    schedule 24.02.2015    source источник


Ответы (1)


Общедоступные объекты Amazon S3 следуют этому шаблону URL:

https://S3Endpoint/BucketName/ObjectName

Самый простой способ узнать URL-адрес объекта — перейти в Консоль управления AWS и посмотрите на ссылку "Ссылка:" для объекта.

person Yosuke Matsuda    schedule 24.02.2015