我的实现是发送一些我不想要的参数。这是requestDescriptor
:
RKObjectMapping *userMapping = [RKObjectMapping requestMapping];
[userMapping addAttributeMappingsFromArray:@[@"nombres", @"telefono", @"direccion", @"email", @"identificacion", @"tipo_id", @"recibir_sms_ordenes", @"recibir_correos_ordenes"]];
RKRequestDescriptor *descriptor = [RKRequestDescriptor requestDescriptorWithMapping:userMapping objectClass:[RKUser class] rootKeyPath:@"me" method:RKRequestMethodAny];
[[RKObjectManager sharedManager] addRequestDescriptor:descriptor];
这是POST请求:
RKUser *user = [self currentUser].user; // [self currentUser].user returns the current RKUser
RKObjectManager *manager = [RKObjectManager sharedManager];
[manager postObject:user path:@"/api/me.json" parameters:nil success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
NSLog(@"%@ %@", operation, mappingResult);
} failure:^(RKObjectRequestOperation *operation, NSError *error) {
NSLog(@"%@ %@", error, operation);
}];
在服务器中,我在密钥me
下正确获取这些属性(JSON有效负载),但我也在密钥current_user
下收到完全相同的属性。这是服务器收到的JSON有效负载:
{
"me": {
"identificacion": "1104680135",
"telefono": "123",
"direccion": "Av.ManuelAgustínAguirreyJoséPicoita",
"recibir_correos_ordenes": true,
"email": "admin@macool.me",
"nombres": "MarioAndres",
"recibir_sms_ordenes": true,
"tipo_id": "Cédula"
},
"current_user": {
"me": {
"identificacion": "1104680135",
"telefono": "123",
"direccion": "Av.ManuelAgustínAguirreyJoséPicoita",
"recibir_correos_ordenes": true,
"email": "admin@macool.me",
"nombres": "MarioAndres",
"recibir_sms_ordenes": true,
"tipo_id": "Cédula"
}
}
}
如您所见,我在密钥current_user
下发送重复数据。我该如何避免这种情况?这是一个错误吗?
我正在使用从其github存储库中提取的Restkit 0.22.0(目前提交 232f7f0 )