Ios RestKit:如何通过post协议以某种密钥发送对象?
我想通过post协议将对象发送到服务器。我使用它的RestKit框架 因此,例如:Ios RestKit:如何通过post协议以某种密钥发送对象?,ios,objective-c,restkit,restkit-0.20,Ios,Objective C,Restkit,Restkit 0.20,我想通过post协议将对象发送到服务器。我使用它的RestKit框架 因此,例如: PData *item = [[PData alloc] init]; item.uri = @"http://google.com"; item.status = @"0"; item.updated = [NSDate date]; item.created = [NSDate date]; item.user_id = @"3"; RKObjectManager *sharedManager = RKOb
PData *item = [[PData alloc] init];
item.uri = @"http://google.com";
item.status = @"0";
item.updated = [NSDate date];
item.created = [NSDate date];
item.user_id = @"3";
RKObjectManager *sharedManager = RKObjectManager sharedManager;
[sharedManager postObject:item
path:nil
parameters:nil
success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
[self printPData:mappingResult];
} failure:^(RKObjectRequestOperation *operation, NSError *error) {
NSLog(@"\n\n\n == \nERROE = %@",error);
}];
如何在某个键(“数据”)中推送json(包含项的数据)
(我可以从$\u POST[“数据”]获取服务器上的此数据)
我怎么能这样做呢?
{
"data": {
"created": "2014-03-05 14:49:30",
"status": "0",
"updated": "2014-03-05 14:49:30",
"uri": "http:\/\/google.com",
"user_id": "3"
}
}
现在,我只有这个:
{
"status": "0",
"updated": "2014-03-05 14:52:17",
"user_id": "3",
"uri": "http:\/\/google.com",
"created": "2014-03-05 14:52:17"
}
听起来好像您没有在请求描述符中指定密钥路径。目前,在代码的某个地方,您将有如下内容:
RKRequestDescriptor *descriptor =
[RKRequestDescriptor requestDescriptorWithMapping:mapping
objectClass:[PData class]
rootKeyPath:nil
method:RKRequestMethodAny];
您需要将其更改为:
RKRequestDescriptor *descriptor =
[RKRequestDescriptor requestDescriptorWithMapping:mapping
objectClass:[PData class]
rootKeyPath:@"data"
method:RKRequestMethodAny];
这样RestKit就会知道
PData
对象应该映射到data
键路径。您尝试了什么请求描述符、映射、路由?它做错了什么?我做得很好,但对象的json被推到了$\u POST的根目录中。但是我想让json在$_POST[“data”]中推送好,所以显示您的描述符和映射,以便我们可以更正它们。这可能是一个关键路径错误。