J'essaie d'ajouter des données à mon modèle de données afin de le tester J'imprime l'information récupérée via Alamofire mais mon problème est que certaines données ont besoin d'appeler l'API à nouveau, il devient nul quand je imprime le. Voici mon codeAttendez plusieurs demandes Alamofire
code pour obtenir les données de la personne
func printAPI(){
swApiHandler.requestSWPApi("http://swapi.co/api/people", completionHandler: {(response, error) in
let json = JSON(response!)
let jsonResult = json["results"]
for (index,person):(String, JSON) in jsonResult{
let name = person["name"].stringValue
let height = person["height"].intValue
let mass = person["mass"].intValue
let hairColor = person["hair_color"].stringValue
let skinColor = person["skin_color"].stringValue
let eyeColor = person["eye_color"].stringValue
let birthYear = person["birth_year"].stringValue
let gender = person["gender"].stringValue
let homeWorldUrl = person["homeworld"].stringValue
let homeWorldNameKey = "name"
let homeWorld = self.getSWApiSpecificValue(homeWorldUrl, strKey: homeWorldNameKey)
print("Name: \(name)")
print("Height: \(height)")
print("Mass: \(mass)")
print("Hair Color: \(hairColor)")
print("Skin Color: \(skinColor)")
print("Eye Color: \(eyeColor)")
print("Birth Year: \(birthYear)")
print("Gender: \(gender)")
print("Home World: \(homeWorld)")
print("------------------------------")
}
})
}
code pour obtenir la valeur spécifique
func getSWApiSpecificValue(strUrl: String, strKey: String) -> String{
var name = ""
swApiHandler.requestSWPApi(strUrl, completionHandler: {(response,error) in
let json = JSON(response!)
print(json[strKey].stringValue)
name = json[strKey].stringValue
})
return name
}
Si vous voulez savoir ici le modèle JSON est
Et pour l'exécution du code est ici la sortie
Quel est le problème? –
Placez des points d'arrêt dans vos gestionnaires d'achèvement et renvoyez des instructions, puis essayez de déboguer l'application. –
@Pooja Regardez Homeworld la valeur est vide car elle est récupérée de manière asynchrone (Appel Api imbriqué) –