5

Sto postando un'immagine ad Amazon S3 tramite AFNetworking e ricevendo uno strano errore. Il file è di caricare, ma una volta che raggiunge il 100% viene restituito un errore:Invia richiesta Amazon S3 con AFNetworking

Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: method not allowed (405)" 



AFAmazonS3Manager *s3manager = [[AFAmazonS3Manager alloc] initWithAccessKeyID:AWS_Access_Key secret:AWS_Secret_Key]; 
s3manager.requestSerializer.region = AFAmazonS3USWest1Region; 
s3manager.requestSerializer.bucket = AWS_Bucket_Name; 


//setting for image url name 
NSString* destionationPathForS3 = @"1234567"; 

[s3manager postObjectWithFile:self.filePath 
       destinationPath:destionationPathForS3 
        parameters:nil 
        progress:^(NSUInteger bytesWritten, long long totalBytesWritten, long long totalBytesExpectedToWrite) { 
         NSLog(@"%f%% Uploaded", (totalBytesWritten/(totalBytesExpectedToWrite * 1.0f) * 100)); 
        } 
         success:^(id responseObject) { 
          NSURL *resultURL = [s3manager.requestSerializer.endpointURL URLByAppendingPathComponent:destionationPathForS3]; 
          NSLog(@"Upload Complete: %@", resultURL); 
         } 
         failure:^(NSError *error) { 
          NSLog(@"Error: %@", error); 
         }]; 

risposta

9

Non realmente sicuro perché, ma cambiando il seguito ha lavorato per me:

postObjectWithFile: 

a

putObjectWithFile: 
+0

Accesso "WRITE" pubblico Bucket: a volte viene definito accesso "put" o "upload". Permette a chiunque di aggiungere/eliminare/sostituire oggetti nel tuo bucket Amazon S3. Per dettagli - https://aws.amazon.com/articles/Amazon-S3/5050 – avi