Impossible de convertir la valeur de type '__NSArrayM' (0x34df0900) en 'NSDictionary' SWIFT
Lors du décodage JSON réponse de webservice j'obtiens un message d'erreur disant:
Could not cast value of type '__NSArrayM' (0x34df0900) to 'NSDictionary'
J'ai essayé beaucoup de solutions trouvées dans StackOverflow trop, mais rien ne fonctionne.
Mon Code :
let jsonData:NSDictionary = (NSJSONSerialization.JSONObjectWithData(urlData!, options:NSJSONReadingOptions.MutableContainers , error: &error) as? NSDictionary)!
let success:NSInteger = jsonData.valueForKey("success") as! NSInteger
Réponse du Service Web:
[
{
"id": "1",
"title": "bmw",
"price": "500.00",
"description": "330",
"addedDate": "2015-05-18 00:00:00",
"user_id": "1",
"user_name": "CANOVAS",
"user_zipCode": "32767",
"category_id": "1",
"category_label": "VEHICULES",
"subcategory_id": "2",
"subcategory_label": "Motos",
"bdd": {}
}
]
Merci pour votre aide
source d'informationauteur f1rstsurf
Vous devez vous connecter pour publier un commentaire.
Essayez de remplacer la ligne suivante:
:
J'espère que cela va vous aider!
Cheers!
Utilisation SwiftyJSON : https://github.com/SwiftyJSON/SwiftyJSON
Et si le succès est dans le tableau
Ou si le succès n'est pas dans le tableau
Vous pouvez également vérifier le succès de la valeur
Ce qui va vous arriver si vous manquez un "niveau" la lecture des journaux. J'étais confronté à cette erreur, essayé un casting pour un NSArray au lieu de NSMutableDictionary comme ici
Swift JSON erreur, n'ont pas Pu chasser valeur de type '__NSArrayM' (0x507b58) à "NSDictionary' (0x507d74)
Le contenu réel de l'objet à l'intérieur d'un NSDictionary à l'indice 0 du tableau. Essaie avec ce code (y compris les quelques lignes du journal pour illustrer)