1

J'utilise dataTaskWithRequest et j'obtiens json de tableau avec deux objets dedans (ces objets sont clé, valeur) et je veux vérifier une valeur de clé dans deux objets.type (chaîne, anyobject) n'a aucun membre indice

ceci est mon code:

let task = session.dataTaskWithRequest(request, completionHandler: {data, response, error -> Void in 
      print("Response: \(response)") 

      var jsonArray: [String:AnyObject]! 

      do { 
       jsonArray = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions()) as? [String:AnyObject] 
      } catch { 
       print(error) 
      } 

      for json in jsonArray { 
       print("object json reciver :",json) 

//type (string , anyobject) has no subscript member 
       print("state :",json["state"]) 

      } 
     }) 
+0

Ce que vous appelez jsonArray n'est pas un tableau, c'est un dictionnaire. – Moritz

Répondre

6

json est une variable typée (String, AnyObject). Vous ne pouvez pas écrire des tuples.

Remplacer les éléments suivants:

print("state :",json["state"])

avec:

print("\(json.0) : \(json.1)")

-3

Vous devez jeter jsonArray à NSArray.