gpt4 book ai didi

ios - 从 Amazon S3 下载所有图像

转载 作者:行者123 更新时间:2023-11-29 02:23:14 24 4
gpt4 key购买 nike

到目前为止,我非常幸运地学习并实现了将图片上传到 Amazon 的 S3 服务。我要上传图片到服务器。全部具有不同的名称,因此不会覆盖另一个。

我可以下载图像,但只能使用特定名称(即“image.png”)。我想下载所有图像。然后我要把它们放在 tableView 中。我就是做不到在文档中找到这个问题的答案。这是我的代码,可以下载 1 张图片。

-(void)download{

//Creating S3 transfer manager client
AWSS3TransferManager *transferManager = [AWSS3TransferManager defaultS3TransferManager];


//Dowloading actual object
//Create the NSURL for thte download location.

NSString *downloadingFilePath = [NSTemporaryDirectory()stringByAppendingPathComponent:@"downloaded-image.png"];
NSURL *downloadingFileURL = [NSURL fileURLWithPath:downloadingFilePath];

//Construct download request
AWSS3TransferManagerDownloadRequest *downloadRequest = [AWSS3TransferManagerDownloadRequest new];

downloadRequest.bucket = @"MyBucketName";
downloadRequest.key = @"image.png"; //<----- I can only download an image by this name?
downloadRequest.downloadingFileURL = downloadingFileURL;


//Download the file
[[transferManager download:downloadRequest]continueWithExecutor:[BFExecutor mainThreadExecutor] withBlock:^id(BFTask *task) {
if (task.error) {
if ([task.error.domain isEqualToString:AWSS3TransferManagerErrorDomain]) {
switch (task.error.code) {
case AWSS3TransferManagerErrorCancelled:
case AWSS3TransferManagerErrorPaused:

break;

default:
NSLog(@"Error: %@", task.error);
break;
}
}else{
//Unknown Error
NSLog(@"Error: %@", task.error);
}
}
if (task.result) {
AWSS3TransferManagerDownloadOutput *downloadOutput = task.result;
//File downloade successfully
NSLog(@"Download Output: %@", downloadOutput);
}
self.selectedImageView.image = [UIImage imageWithContentsOfFile:downloadingFilePath];
return nil;
}];

}

最佳答案

AWSS3 有一个名为 - listObjects: 的方法,该方法返回 AWSS3ListObjectsOutput 的实例。 AWSS3ListObjectsOutputcontents 属性是一个 AWSS3Object 数组。您可以循环遍历数组并对 AWSS3Object 的每个 key 调用 - download: 以下载存储桶中的所有对象。

关于ios - 从 Amazon S3 下载所有图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27867419/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com