【问题标题】:Restkit request not sending parametersRestkit请求不发送参数
【发布时间】:2013-12-11 03:28:20
【问题描述】:

我的实现没有发送参数。这是请求描述符:

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];

这是发帖请求:

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);
}];

在服务器中,我只收到一个空的current_user 参数。关于为什么的任何想法?

PD。服务器期望在me 键下的 JSON 有效负载

【问题讨论】:

  • “参数”是什么意思?服务器期望收到什么?您是否将请求序列化类型设置为 JSON?
  • @Wain 我该怎么做?服务器期望 JSON 中的对象也许这就是我所缺少的

标签: ios iphone objective-c restkit restkit-0.20


【解决方案1】:

确保您已设置:

manager.requestSerializationMIMEType = RKMIMETypeJSON;

默认为RKMIMETypeFormURLEncoded


根据您的 cmets 和讨论,由于用户类别错误,未使用映射。这是因为它是一个普通的 NSManagedObject 而不是 RKUser 实例。这意味着 RestKit 找不到合适的映射。造成这种情况的原因是未在您的 Core Data 模型中的 User 实体上设置自定义类。

【讨论】:

  • 我已经这样做了,但它一直没有向服务器发送任何内容。我错过了什么?谢谢你的回答,顺便说一句
  • 那么,RKUser 是什么?有哪些属性?打开映射的跟踪日志,看看它告诉你什么。
  • RKUser 具有以下属性:@[@"nombres", @"telefono", @"direccion", @"email", @"identificacion", @"tipo_id", @"recibir_sms_ordenes", @"recibir_correos_ordenes"](与我在映射中添加的相同)。我已经设置了RKLogConfigureByName("RestKit/ObjectMapping", RKLogLevelTrace);,它没有显示任何关于映射的信息。也许它没有达到那个 requestMapping
  • 日志应该说一些关于映射的内容,即使它只是告诉你它不理解类(没有匹配的映射)。
  • 但是我正确设置了requestMapping,是吗?似乎是什么问题?
猜你喜欢
  • 1970-01-01
  • 2012-07-28
  • 2011-09-25
  • 2014-08-17
  • 1970-01-01
  • 1970-01-01
  • 2021-07-17
  • 1970-01-01
  • 2021-05-23
相关资源
最近更新 更多