Array of Dictionaries aus einem JSON abruf

  1. vor 7 Monaten
    Bearbeitet vor 7 Monaten von HeroHann

    Hallo, ich bin neue hier und bin auch noch recht neu in Sachen Swift 4.
    Bin jetzt seit ein paar Tagen dabei und nun leider auf ein Problem gestoßen bei dem ich seit heute morgen nicht weiterkomme und vielleicht doch etwas Hilfe brauche.

    Hier mein Code:

    func getAllBlocks () { //Abruf der JSON Daten zum Überblick.
            let JSONurl = "https://chain.api.btc.com/v3/block/latest,5000,2" //URL festlegen
            let url = URL(string: JSONurl ) //String umwandeln in eine URl
            let task = URLSession.shared.dataTask(with: url!) { (data, response, error) in //Datenabruf
                if error != nil {
                    print("ERROR \(String(describing: error))")
                    return
                }
                do {
                    let loadedJSON = try JSONSerialization.jsonObject(with: data!) as! [String:Any] //JSON verarbeiten
                    print(loadedJSON)
                    for (key, value) in loadedJSON {
                        print(key)
                        if (key == "data") { //prüfen auf key "data" und dann dessen Dict abgreifen
                            print("data")
                            //Hier ist das Problem. Am Ende sollen alle Daten aus dem JSON Abruf in ein Array damit ich sie von dort aus weiter verwenden kann.
    
    
                                }}
    
                } catch{ print("Error beim JSON decodieren! \(error)") }
            }
            task.resume()
        }

    Mein Problem ist, das ich beim Abruf des JSON von: link text eine Struktur zurückerhalte, die ich irgendwie nicht verarbeitet bekomme. Wenn ich statt zwei Bitcoin-Blöcke (die zahlen am Ende) nur einen abrufe,, kann ich es verarbeiten. Sobald es aber mehr als einer ist, entsteht im JSON noch ein Array das ich nicht aufgelöst bekomme.

    Hat hier jemand eine Idee wie ich an die jeweiligen Daten aus den Dictionaries der einzelnen Blöcke komme?
    Vielen Dank für jede Hilfe!

 

oder registriere Dich, um zu antworten!