【问题标题】:iOS Restkit: how to parse nested pathiOS Restkit:如何解析嵌套路径
【发布时间】:2014-02-26 18:13:37
【问题描述】:

我收到了这种类型的 JSON 响应:

{
"d": { "id": "1", "user": "test"}
}

我使用 Restkit 解析的代码如下:

@interface ODataUser : NSObject<ODataObject>

@property (nonatomic, copy) NSString * id;
@property (nonatomic, copy) NSString * user;

-(NSString*)getId;
-(NSString*)getUser;
@end

RKObjectMapping *map = [RKObjectMapping mappingForClass:[ODataUser 班级]]; [映射addAttributeMappingsFromDictionary:@{@“id”: @"id", @"user" : @"user" } ];

RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:map method:RKRequestMethodGET  pathPattern:nil keyPath:@"d" statusCodes:RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful)];

但是,现在我的回复变成了这样:

{
"d": { "results": [ {"id": "1", "user": "test"} ] }
}

如何在我的代码响应中反映这些更改?

【问题讨论】:

标签: ios objective-c json restkit


【解决方案1】:

更改您的响应描述符以使用:

keyPath:@"d.results"

因为这将导航到 d 字典以获取 results 数组并处理它包含的所有字典。

【讨论】:

  • 在什么方面不起作用?提供详细信息 - 错误、崩溃日志?如果两者都没有,请打开跟踪日志并显示内容。
  • 抱歉,我的错误与其他问题有关。你的解决方案奏效了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多