2017-06-16 1 views
0

Je me connecte avec Facebook maintenant J'ai l'info mais je veux utiliser deux valeurs de la dictResponse pour les utiliser plus tard ces valeurs sont "nom" et "email" mais Je ne sais pas comment puis-je les enregistrer dans une variable ou constante. Pourriez-vous m'aider. S'il vous plaît.Comment utiliser deux paramètres que Facebook me récupérer

Ceci est mon code:

func getFBUserData(){ 
     if((FBSDKAccessToken.current()) != nil){ 
      FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "id, name, first_name, last_name, picture.type(large), email"]).start(completionHandler: { (connection, result, error) -> Void in 
       if (error == nil){ 
        self.dictResponse = result as! [String : AnyObject] 

        print(result!) 
        print(self.dictResponse) 
       } 
      }) 
     } 
    } 

Et ceci est la réponse du service

email = "[email protected]"; 
    "first_name" =xxxxx; 
    id =0000000000000; 
    "last_name" = "xxxxxxx"; 
    name = "xxxxxxxxx"; 
    picture =  { 
     data =   { 
      "is_silhouette" = 0; 
      url = "xxxxxxxxxxxxxxxxxxxxxxxxxx"; 
     }; 
    }; 
} 

Répondre

0

Vous pouvez ajouter struct Préférences avec objet singltone

struct Preferences { 

    //singlton 
    static var shared = Preferences() 

    var name: String? 
    var email: String? 
} 

et y stocker vos variables

func getFBUserData(){ 
     if((FBSDKAccessToken.current()) != nil){ 
      FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "id, name, first_name, last_name, picture.type(large), email"]).start(completionHandler: { (connection, result, error) -> Void in 
       if (error == nil){ 
        self.dictResponse = result as! [String : AnyObject] 
        Preferences.shared.name = dictResponse["name"] as? String 
        Preferences.shared.email = dictResponse["email"] as? String 

        print(result!) 
        print(self.dictResponse) 
       } 
      }) 
     } 
    } 

à l'avenir, vous pouvez les obtenir de partout.

+0

Ok, ça a l'air si bon Merci – user8172235

+0

Si ma réponse vous a aidé pouvez-vous s'il vous plaît upvote et marquer comme bonne réponse :) merci –

+0

Bien sûr, je voudrais faire cela, mais je n'ai pas moins de 15 réputation, mais OUI IL M'AIDE BEAUCOUP MERCI :) – user8172235