Wie wird SwiftyJSON für verschachtelte JSON-Werte verwendet?

Ich rufe eine JSON-API auf, die mehrere verschachtelte Werte enthält, die ich abrufen muss. Ich benutze SwiftyJSON, um die Dinge ein wenig sauberer zu machen. Bei den Werten der obersten Ebene scheint alles in Ordnung zu sein, aber bei etwas tieferem erhalte ich das gefürchtete "Null beim Auspacken des optionalen Werts".

Hier mache ich den API-Aufruf mit Alamofire:

Alamofire.request(APIRequests.Router.Nearby(self.page)).responseJSON(){
        (_,_,json,_) in
        println(json)
        if (json != nil){
            var jsonObj = JSON(json!)

            if let userArray = jsonObj ["results"].array {

                for userDict in userArray {
                        var username: String! = userDict["username"].string
                        var firstName: String! = userDict["firstName"].string
                        var profileImage: String! = userDict["userImages"]["profile"]["filename"].string
                        var characterName: String! = userDict["characters"]["characterName"].string

                        var user = User(username: username, profileImage: profileImage, firstName: firstName, characterName: characterName)

                        self.users.append(user)
                    }
                }

Hier ist ein Beispiel für den JSON:

{
  userInfo: {
     something: "abc",
     requestType: "GET"
  },
  results: [
    {
     username: "Jess",
     firstName: "Jessica",
     userImages: {
        profile: [
           {
            userImageID: "6",
            filename: "user-07.jpg"
           }
        ],
        cover: [
           {
            userImageID: "15",
            filename: "user-07.jpg"
           }
        ]
     },
     characters: [
         {
          userCharacterID: "8",
          characterName: "Amelia",
         }
     ]
}

Für die Tasten der obersten Ebeneusername undfirstName Der Debugger zeigt jedoch die korrekten Werte an, sobald ich etwas tiefer tauche, um @ zu bekommeprofileImage odercharacterName Diese werden als Null zurückgegeben, obwohl beim Drucken des JSON-Codes Werte für diese Schlüssel angezeigt werden.

Was mache ich falsch? Ich sehe es einfach nicht.

Irgendwelche Gedanken wären hilfreich. Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage