使用Swift 4中的Object Mapper解析嵌套对象

问题描述 投票:0回答:1

我有JSON响应,如下所示

{
    "XYZ": {
        "ABC": {
            "PQR": [
                {
                    "details": {
                        "date":1221,
                        "number": 30
                    }
                }
            ]
        }
    }
}

我想直接获取“日期”和“数字”的详细信息。无需单独解析XYZ,ABC,PQR和细节。

struct Trial: Mappable {
    var PQR!
    init() {}
    init?(map: Map) {}

    mutating func mapping(map: Map) {
        trialPeriod <- map["XYZ.ABC.PQR"]    
    }
}

我要解析直到PQR。在那之后,我无法解析。在解析到PQR之后,能告诉我如何获取“细节”吗?

要么

让我知道如何直接解析一个数字?我尝试了很多次但是无法这样做。

ios json swift parsing objectmapper
1个回答
1
投票

您无法在PQR之后解析嵌套,因为它是JSON数组而不是JSON对象。所以,如果你确定它只是数组的第一个元素,你可以做类似的事情。

struct Trial: Mappable {
    var PQR!
    init() {}
    init?(map: Map) {}

    mutating func mapping(map: Map) {
        trialPeriod <- map["XYZ.ABC.PQR.0.details.date"]
    }
}

注意.0,它表示数组中的第一项。

或者,更好的是,尝试将XYZ.ABC.PQR解析为数组,然后解析其中的单个项目

© www.soinside.com 2019 - 2024. All rights reserved.