Как компактно распарсить несколько url, для дальнейшего вывода Name и Image в строку TableView?

Как сделать это компактно?

Есть массив: itemArr =[StructData]

URL1 http://mainsite.ru/blabla.json содержащий:

[ { "id": 1, "name": "Tanya", }, { "id": 2, "name": "Sasha", }]

URL2 http://somesite.ru/X.json (где X - это id из первого урла. Например для name: Tanya получим:

[{ "id": 1,"imageID": "23"}]

URL3 http://somePictures.ru/Y.jpeg - где Y это imageID

Мне нужно вывести в строку в TableView: Name и Image (использую SD_Image для картинок и SwiftyJSON для парсинга).

Допустим, формат парсинга для URL1 такой:

    func parseJSON(){
    let url = URL(string: "http://mainsite.ru/blabla.json")

    guard let downloadURL = url else {return}

    let session = URLSession.shared
    session.dataTask(with: downloadURL) { data, response, error in
               guard let data = data else {return}
                do{
                    let myJSON = try JSON(data: data)

                    for item in myJSON.arrayValue {

                       let id = item["id"].intValue
                       let name = item["name"].stringValue
                     self.itemsArr.append(StructData(id: id, name:name)
                  }

            }

Ответы (0 шт):