Разбор Comlpex JSON с SwiftyJSON - PullRequest
       15

Разбор Comlpex JSON с SwiftyJSON

0 голосов
/ 19 апреля 2019

Я снова и снова пытаюсь разобрать адрес пути миниатюры из этого 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)
                    }
                }

Я сделал это, чтобы разделить имя и идентификатор для таких символов:

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)
                    }
                }

и он работает просто отлично, но в случае с миниатюрой я застрял на некоторое время в поиске в Интернете и пытался выяснить это сам

Я был бы очень признателен, если бы кто-нибудь дал мне ответ на этот вопрос, я так долго боролся.

Заранее спасибо

1 Ответ

1 голос
/ 19 апреля 2019

Вы можете попробовать

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) 
   }
}
...