【问题标题】:Error while parsing empty array in RestKit在 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。我怎样才能做到这一点?

【问题讨论】:

    标签: ios json restkit


    【解决方案1】:

    我忘了设置[informationMapping setIgnoreUnknownKeyPaths:YES];。如果设置了,则忽略异常并且值为 nil。不错!

    【讨论】:

    • 如果空数组为空怎么办,例如“信息”:空。我试过 setIgnoreUnkownKeyPaths:YES,但它似乎没有处理空对象。有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 2013-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多