2016-05-22 10 views
2

Ich versuche, die Informationen, die ich Facebook von einer Facebook-Grafik-Anfrage zu einem Objekt zu konvertieren, aber bis jetzt das einzige, was ich tat, war die gesamte Information in einer großen Zeichenfolge. Gibt es eine bessere Möglichkeit, die gesamte URL in ein Objekt zu setzen, so dass es zugänglich ist wie object.Name? Das ist mein Javascript-Code den URL-Code zu erhalten und es in einem Objekt zu setzen:graph.facebook Ausgabe in einem Objekt

var json = $.ajax({ 
    'url': "https://graph.facebook.com/me?fields=name,email,birthday,location&access_token=xxxxcallback=?" 
}); 

Als ich json.responseText sage ich diese Ausgabe in einem String:

'{ 
    "name": "MY_NAME", 
    "email": "MY_EMAIL", 
    "birthday": "MY_BIRTHDAY", 
    "location": { 
     "id": "XXXX", 
     "name": "MY_LOCATION" 
    }, 
    "id": "MY_ID" 
}' 

Ich brauche diesen Code, um es auf meiner Website für die Registrierungsseite, damit ich auf die Werte leicht zugreifen kann. Was mache ich falsch? Danke für jede Hilfe!

Antwort

1

Wenn Sie die Antwort des AJAX-Request durch eine der Standard jQuery Methoden, wie zum Beispiel der success Eigenschaft $.ajax oder done() des zurück latenten Objekts zuzugreifen, dann wird die response automatisch für Sie deserialised wird. Versuchen Sie diese:

$.ajax({ 
    url: "https://graph.facebook.com/me?fields=name,email,birthday,location&access_token=xxxxcallback=?", 
    success: function(data) { 
     // access the properties of the response here: 
     console.log(data.name); 
     console.log(data.email); 
     console.log(data.location.name); 
    } 
}); 

Beachten Sie auch, dass Facebook ein Javascript SDK, das auch die obige Funktionalität bietet sowie einige andere OAuth-Helfer zur Verfügung stellt. Es lohnt sich, hineinzuschauen.

+0

danke Kumpel, dass meine Lösung gelöst hat !! – Bilal

+0

Kein Problem, froh zu helfen. –