5

Ich poste ein Bild auf Amazon S3 über AFNetworking und bekomme einen seltsamen Fehler. Die Datei ist das Hochladen, aber sobald es 100% trifft es einen Fehler zurück:Anfrage senden Amazon S3 mit 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); 
         }]; 

Antwort

9

Nicht wirklich sicher, warum, aber für mich die unten gearbeitet Wechsel:

postObjectWithFile: 

zu

putObjectWithFile: 
+0

Bucket public "WRITE" access: Dies wird manchmal als "put" oder "upload" Zugriff bezeichnet. Es ermöglicht jedem, Objekte in Ihrem Amazon S3-Bucket hinzuzufügen, zu löschen oder zu ersetzen. Für Details - https://aws.amazon.com/articles/Amazon-S3/5050 – avi