Я новичок в AWS и использую его для приложения iOS.AWS S3 Загрузить изображение в приложение Bucket iOS
Я пытаюсь загрузить изображения из приложения iOS в ведро с именем «img.haraj.com.sa». Когда я загружаю любое изображение, они не отображаются в ведре. Но когда я меняю цель на ведро с именем «haraj», они загружаются и отображаются в ведре.
Вот политика:
{
"Statement": [
{
"Sid": "**********hidden**********",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::haraj/*"
]
}
]
}
Я изменить это для изменения целевого ведра. Я также создал другие ведра с именем «img1.haraj.com.sa» и попытался загрузить изображения, и, к сожалению, они также потерпели неудачу.
Кажется, что есть проблема с именами ковша с точками (.) И без точек. Имена ведер без точек работают с приложением iOS, а имена с точками не работают. Хотя я не уверен. Но я столкнулся с этой проблемой. Я не получаю никакого сообщения об ошибке в коде приложения.
Вот часть моего IOS приложение реализации:
- (void)postAdButtonPushed:(id)sender
{
DLog(@"Post Ad")
AmazonS3Client *s3Client = [[AmazonS3Client alloc] initWithAccessKey:AWS_ACCESS_KEY_ID withSecretKey:AWS_SECRET_KEY];
s3Client.timeout = 240;
NSString *bucketName = [NSString stringWithFormat:@"img.haraj.com.sa"];
NSString *imageName = [NSString stringWithFormat:@"testimage.jpg"];
S3PutObjectRequest *objReq = [[S3PutObjectRequest alloc] initWithKey:imageName inBucket:bucketName];
objReq.contentType = @"image/jpeg";
UIImage *testImageToUpload = [self.imagesToUpload objectAtIndex:0];
NSData *imageData = UIImageJPEGRepresentation(testImageToUpload, 0.8);
objReq.data = imageData;
objReq.delegate = self;
objReq.contentLength = [imageData length];
[s3Client putObject:objReq];
}
- (void)request:(AmazonServiceRequest *)request didCompleteWithResponse:(AmazonServiceResponse *)response
{
DLog(@"response: %@", response.description)
}
- (void)request:(AmazonServiceRequest *)request didFailWithError:(NSError *)error
{
DLog(@"Req failed: %@", error.description)
}
Я также создал нить на Amazon форуме по адресу: AWS Upload image to Bucket iOS app
Любая помощь будет оценена. Спасибо!
https://forums.aws.amazon.com/ message.jspa? messageID = 385925 – Eric
Спасибо @ Эрик. Это исправление для версии Java. Я использую AWS SDK в iOS. И я интегрировал фреймворк (не исходный код sdk). Давайте надеемся, что выйдет какое-то простое решение, иначе мне придется что-то обманывать с исходным кодом. : \ –