jdog
jdog

Reputation: 10759

iOS multipart form request failing with attempt to insert nil object from objects[1]

Trying to do a multipart form request with Restkit and I am getting and NSdictionary error? I am not sure why am getting this error.

[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[1]'

NSMutableURLRequest *request = [[RKObjectManager sharedManager] multipartFormRequestWithObject:obj
                                                                                        method:RKRequestMethodPOST path:@"v1/things/update_avatar.json"
                                                                                    parameters:@{
                                                                                             @"auth_token" : self.accessToken,
                                                                                             @"email" : user.userID,
                                                                                             @"api_key" : self.api_key,
                                                                                             @"avatar" : @"userAvatar"
                                                                                             }
                                                                     constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {

     [formData appendPartWithFileData:UIImageJPEGRepresentation(image, 1)
                                 name:@"obj[image]"
                             fileName:@"userAvatar.jpeg"
                             mimeType:@"image/jpeg"];
 }];



RKObjectRequestOperation *operation = [[RKObjectManager sharedManager] objectRequestOperationWithRequest:request
                                                                                                 success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
                                                                                                     //
                                                                                                     DLog(@"");
                                                                                                 } failure:^(RKObjectRequestOperation *operation, NSError *error) {
                                                                                                     //
                                                                                                     DLog(@"");
                                                                                                 }];
[[RKObjectManager sharedManager] enqueueObjectRequestOperation:operation]; // NOTE: Must be enqueued rather than started

Upvotes: 1

Views: 521

Answers (1)

luffy
luffy

Reputation: 429

It may be one of these self.accessToken, user.userID and self.api_key is nil.

Use NSParameterAssert to check those parameter in debug mode

Upvotes: 1

Related Questions