在 RestKit 中解析空数组时出错
Posted
技术标签:
【中文标题】在 RestKit 中解析空数组时出错【英文标题】:Error while parsing empty array in RestKit 【发布时间】:2012-06-28 07:32:03 【问题描述】:我有以下 JSON 结构:
"projekt":
"id":18,
"projectname":"test",
"dokumente":
"id":1190,
"name":"rootfolder",
"information":
"folder":[
"id":1191,
"name":"folder 1",
"information":""
,
"id":1198,
"name":"folder 2",
"information":
"folder":[
"id":1199,
"name":"folder 2 1",
"information":""
,
"id":1199,
"name":"folder 2 2",
"information":""
]
]
基本上它是一个递归文件夹结构。我有用于项目、信息和文件夹的 RKObjectMappings。解析顺利,直到达到information=""
。 RestKit 现在尝试调用
value = [self.sourceObject valueForKeyPath:relationshipMapping.sourceKeyPath];
在 RKObjectMappingOperation 中,第 442 行。这会失败,因为 sourceKeyPath 是 folder
,这在此 information
元素中不可用。这会导致 NSUnknownKeyException
并停止解析。
我想要的是 RestKit 只是忽略信息元素并将其设置为 nil。我怎样才能做到这一点?
【问题讨论】:
【参考方案1】:我忘了设置[informationMapping setIgnoreUnknownKeyPaths:YES];
。如果设置了,则忽略异常并且值为 nil。不错!
【讨论】:
如果空数组为空怎么办,例如“信息”:空。我试过 setIgnoreUnkownKeyPaths:YES,但它似乎没有处理空对象。有什么想法吗?以上是关于在 RestKit 中解析空数组时出错的主要内容,如果未能解决你的问题,请参考以下文章