I am trying to upload an image to ImageShack using the API :
- (void)uploadImage2:(UIImage *)image { NSData *imageToUpload = UIImagePNGRepresentation(image); if (imageToUpload) { NSMutableDictionary *parameters = [[NSMutableDictionary alloc] init]; [parameters setObject:@"XXXX" forKey:@"key"]; [parameters setObject:@"json" forKey:@"format"]; //[parameters setObject:@"application/json" forKey:@"Content-Type"]; AFHTTPClient *client= [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:@"https://post.imageshack.us"]]; NSMutableURLRequest *request = [client multipartFormRequestWithMethod:@"POST" path:@"/upload_api.php" parameters:parameters constructingBodyWithBlock: ^(id <AFMultipartFormData>formData) { [formData appendPartWithFileData: imageToUpload name:@"image" fileName:@"logo.png" mimeType:@"image/png"]; }]; AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) { NSDictionary *jsons = [NSJSONSerialization JSONObjectWithData:responseObject options:kNilOptions error:nil]; NSLog(@"response: %@",jsons); } failure:^(AFHTTPRequestOperation *operation, NSError *error) { if([operation.response statusCode] == 403) { //NSLog(@"Upload Failed"); return; } //NSLog(@"error: %@", [operation error]); }]; [operation start]; } }
In response, I return an error message without explanation of the errors:
{ "error_code" = "upload_failed"; "error_message" = "Upload failed"; status = 0; }
Can anyone help me with this? What is the right way to do this?
source share