使用SwiftyJSON解析复杂的JSON

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

我一次又一次地尝试从这个JSON解析缩略图路径地址

"data":{ 
        "offset":0,
        "limit":20,
        "total":1491,
        "count":20,
        "results":[  
            {  
                "id":1011334,
                "name":"3-D Man",
                "description":"",
                "modified":"2014-04-29T14:18:17-0400",
                "thumbnail":{  
                    "path":"http://i.annihil.us/u/prod/marvel/i/mg/c/e0/535fecbbb9784",
                    "extension":"jpg"
                },

但我似乎无法找到我的问题的答案。我这样做:

 for (key, subJson) in json["data", "results", "thumbnail", "path"] {
                    if let imagePath = subJson["path"].string {
                        print(imagePath)
                        let finalImagePath = imagePath + "somestring with my priv key and pub key"
                        print(finalImagePath)
                    }
                }

我这样做是为了削减像这样的字符的名称和id:

for (key, subJson) in json["data"]["results"] {
                    if let name = subJson["name"].string, let id = subJson["id"].int {
                        cardInfo.append(CardInfo(id: id, name: name))
//                        print(cardInfo)
                    }
                }

它工作得很完美,但在缩略图的情况下,我已经卡住了一段时间在线搜索并试图自己解决

如果有人给我答案,我会非常感激,我一直在苦苦挣扎这么久。

提前致谢

swift swifty-json
1个回答
1
投票

你可以试试

if let item = json["data"]["results"].array?.first , let path = item["thumbnail"]["path"].string  { 
   print(path) 
}

对全部

for (_, subJson) in json["data"]["results"] {
   if let path = subJson["thumbnail"]["path"].string {
      print(path) 
   }
}
© www.soinside.com 2019 - 2024. All rights reserved.