Ios RESTKit-将大量对象发布到服务器

Ios RESTKit-将大量对象发布到服务器,ios,restkit-0.20,Ios,Restkit 0.20,如何使用RESTKit将对象数组发布到服务器 我有一个名为Contact的自定义对象,它有一些属性,如姓名、电话等。我想将这些Contact对象的数组发送到服务器。 我知道的方法是postObject:path:parameters:success:failure,但是我在这里放了什么对象呢?如果我放置联系人-它如何知道它是一个数组?如果我把NSArray放进去,它怎么知道是联系人 我的联系人对象头文件是: @interface Contact : NSObject @property (st

如何使用RESTKit将对象数组发布到服务器

我有一个名为Contact的自定义对象,它有一些属性,如姓名、电话等。我想将这些Contact对象的数组发送到服务器。 我知道的方法是postObject:path:parameters:success:failure,但是我在这里放了什么对象呢?如果我放置联系人-它如何知道它是一个数组?如果我把NSArray放进去,它怎么知道是联系人

我的联系人对象头文件是:

@interface Contact : NSObject

@property (strong, nonatomic) NSString *name;
@property (strong, nonatomic) NSString *phone;
@property (nonatomic) NSInteger order;
@property (strong, nonatomic) NSString *firstName;
@property (strong, nonatomic) NSString *lastName;

@end
我的回答是:

RKObjectMapping *personMapping = [RKObjectMapping mappingForClass:[Contact class]];
    [personMapping addAttributeMappingsFromDictionary:@{
                                   @"username": @"name",
                                   @"firstname" : @"firstName",
                                   @"lastname" : @"lastName",
                  }];
RKObjectMapping *personRequestMapping = [RKObjectMapping requestMapping ]; 
    [personRequestMapping addAttributeMappingsFromDictionary:@{
                         @"name": @"username",
                         @"firstName" : @"firstName",
                         @"lastName" : @"lastName",
                         @"phone" : @"usernames"
              }];
我的响应描述符是:

RKResponseDescriptor *personResponseDescriptorForArrayOfPhones =
[RKResponseDescriptor responseDescriptorWithMapping:personMapping
                                             method:RKRequestMethodANY
                                        pathPattern:@"getUsersInfoByPhones"
                                            keyPath:nil
                                        statusCodes:[NSIndexSet indexSetWithIndex:200]];
RKRequestDescriptor *personRequestDescriptor = [RKRequestDescriptor requestDescriptorWithMapping:personRequestMapping
                                                                                     objectClass:[Contact class]
                                                                                     rootKeyPath:nil
                                                                                          method:RKRequestMethodAny];
我的请求是:

RKObjectMapping *personMapping = [RKObjectMapping mappingForClass:[Contact class]];
    [personMapping addAttributeMappingsFromDictionary:@{
                                   @"username": @"name",
                                   @"firstname" : @"firstName",
                                   @"lastname" : @"lastName",
                  }];
RKObjectMapping *personRequestMapping = [RKObjectMapping requestMapping ]; 
    [personRequestMapping addAttributeMappingsFromDictionary:@{
                         @"name": @"username",
                         @"firstName" : @"firstName",
                         @"lastName" : @"lastName",
                         @"phone" : @"usernames"
              }];
我的请求描述符是:

RKResponseDescriptor *personResponseDescriptorForArrayOfPhones =
[RKResponseDescriptor responseDescriptorWithMapping:personMapping
                                             method:RKRequestMethodANY
                                        pathPattern:@"getUsersInfoByPhones"
                                            keyPath:nil
                                        statusCodes:[NSIndexSet indexSetWithIndex:200]];
RKRequestDescriptor *personRequestDescriptor = [RKRequestDescriptor requestDescriptorWithMapping:personRequestMapping
                                                                                     objectClass:[Contact class]
                                                                                     rootKeyPath:nil
                                                                                          method:RKRequestMethodAny];
这个实现看起来好吗

另外,我想发送到服务器的这个数组可能非常大,大约200-1000个对象。用RESTKit可以吗

更新:实际上,我更喜欢发送一个字符串数组,它将是电话号码,并从服务器获取我拥有的联系人对象。如何设置RESTKit来发布字符串数组并期望联系人对象数组的响应

我需要发送的json如下所示:

{
    "usernames":["11","22"]
}
我希望得到的json是:

[
  {
    "_id" : "53e23a54e811310000955f70",
    "profileUpdatesCounter" : 3,
    "lastname" : "SMITH",
    "firstname" : "BOB",
    "username" : "11"
  }
]

可能性取决于上下文—设备、数据可用性和内存可用性。尝试如果您有问题,请显示您使用的代码及其接收内容的服务器日志。您可以从测试系统浏览器插件或类似插件中执行相同的操作吗?在postObject:方法中放置的对象是什么?这会是一个NSArray吗?你能解释一下如何准确地发送数组吗?你只需要传递一个数组。您需要配置相关的请求描述符。更新问题以显示您的源数据、映射和所需的JSON,以及您实际得到的内容。RestKit查看数组以查看有哪些对象可以知道该做什么这对我不起作用。我的服务器希望在请求主体中获得一个用户名数组。我认为postObject:方法并不能完全做到这一点。你知道我怎么做吗?或者我应该告诉我服务器的期望是什么?