Im using Swift for iOS and trying to write to S3 while writing to DynamoDB and the DynamoDB "write" goes through but the S3 "write" doesn't -- would anyone happen to know why? Credentials look fine.


I am creating an iOS application in swift where I am writing some data to DynamoDB. I am doing this through a user i have created which has access to DynamoDB and I am accessing my credentials as environmental variables that I have stored in swift. I start off by reading my data in DynamoDB with AWSDynamoDBObjectMapper.default().scan and then I proceed to write to DynamoDB if the data I want to input isn't already present in my database. The problem is, I am simultaneously attempting to write to S3 within my AWSDynamoDBObjectMapper.default().scan call but I keep on getting an error that says:

S3 Upload Error Description: The operation couldn’t be completed. (com.amazonaws.AWSS3TransferUtilityErrorDomain error 2.)

I have a user in place that gives me full access to S3 and I also have the correct credentials in place to access my S3 bucket. However, for some reason I can't write to the bucket. I was initially using Firebase instead of DynamoDB and everything was working fine. The problem is coming up now that I have shifted over to using DynamoDB with Swift instead. Would anyone happen to know what is going wrong? I have debug statements in place that tell me that the code fails at the
AWSS3TransferUtility.default().uploadData() part.

Thanks -- any help and explanation would be much appreciated

1 réponse


A possible cause is that the IAM policy you are using does not have sufficient permissions.
In addition, I think that an error may occur if the S3 name is different or the region is different.
In addition, errors may occur if the time, etc. of the upload source device is incorrect.

profile picture
répondu il y a 10 mois

Vous n'êtes pas connecté. Se connecter pour publier une réponse.

Une bonne réponse répond clairement à la question, contient des commentaires constructifs et encourage le développement professionnel de la personne qui pose la question.

Instructions pour répondre aux questions