2013-10-09 15 views
6

Szukałem przykładów dla nowego AFNetworking 2.0 do przesyłania zdjęć. Ale uderzam w ścianę i nie mogę się domyślić, co jest nie tak z kodem. Więc to jest kod użyłemPrzesyłanie obrazów iOS za pośrednictwem AFNetworking 2.0

NSData *imageData = UIImageJPEGRepresentation(image, 0.5); 
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; 


AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration]; 

NSURL *URL = [NSURL URLWithString:@"http://myserverurl.com"]; 

NSURLRequest *request = [NSURLRequest requestWithURL:URL]; 

NSURLSessionUploadTask *uploadTask = [manager uploadTaskWithRequest:request fromData:imageData progress:nil completionHandler:^(NSURLResponse *response, id responseObject, NSError *error) { 
    if (error) { 
     NSLog(@"Error: %@", error); 
    } else { 
     NSLog(@"Success: %@ %@", response, responseObject); 
    } 
}]; 
[uploadTask resume]; 

TIA

+0

W jaki sposób to nie działa? Czy pojawia się błąd? –

Odpowiedz

34

skończyło się za pomocą żądania wieloczęściowe

UIImage *image = [info valueForKey:UIImagePickerControllerOriginalImage]; 
NSData *imageData = UIImageJPEGRepresentation(image, 0.5); 
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; 
NSDictionary *parameters = @{@"foo": @"bar"}; 
[manager POST:@"http://example.com/resources.json" parameters:parameters constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { 
    [formData appendPartWithFormData:imageData name:@"image"]; 
} success:^(AFHTTPRequestOperation *operation, id responseObject) { 
    NSLog(@"Success: %@", responseObject); 
} failure:^(AFHTTPRequestOperation *operation, NSError *error) { 
    NSLog(@"Error: %@", error); 
}]; 
+3

'appendPartWithFileData: imageData name: @" image "error: nil]' nie działa już więcej, tak myślę. Powinieneś użyć: '[formData appendPartWithFormData: imageData name: @" image "];' ... ale nadal to nie działa dla mnie:/ – raistlin

+4

i dlaczego nawet martwisz się z fileURl jeśli nie używasz go po ? – raistlin

+2

@raistlin 'appendPartWithFileData' pracował również dla mnie. zobacz http://stackoverflow.com/a/20190352/1933185 – jerik

Powiązane problemy