2012-04-14 4 views
0

Ist es möglich, Benutzer erweiterte Token über js API zu bekommen?Exchange-Token js API oder PHP-Multi-Abfrage

Wenn es nicht darum geht, mehrere Benutzer Token mit einer einzigen Abfrage zu bekommen?

Ich bekomme Token wie folgt;

https://graph.facebook.com/oauth/access_token?client_id=xxx&client_secret=xxx&grant_type=fb_exchange_token&fb_exchange_token=".$u[token]

Antwort

0

Sie können eine Ajax-Anforderung an diese URL Ausgabe seit AJAX-Anfragen auf Ihre Domain (Cross-Domain-Sicherheitspolitik) begrenzt sind, aber Sie könnten die Facebook-JavaScript-sdk nutzen können, obwohl ich bin mir nicht sicher, dass es funktionieren wird.

Etwas wie:

FB.api("oauth/access_token", "get", { 
    client_id: xxx, 
    client_secret: xxx, 
    grant_type: "fb_exchange_token", 
    fb_exchange_token: currentToken 
}, function(response) { 
    console.log(response); 
}); 

Auch wenn dies funktioniert, es ist nicht etwas, das Sie verwenden sollen, da Sie haben das App Geheimnis mit der Bitte zu schließen, und da Sie so von dem Client tun mögen Seite bedeutet, dass das App-Geheimnis nicht mehr wirklich ein Geheimnis sein wird.

Auch, was ist der Sinn, das zu tun? Solange der Benutzer mit Ihrer App interagiert, können Sie einfach, was es verwenden, in Handling Invalid and Expired Access Tokens heißt es:

Desktop Web and Mobile Web apps which implement authentication with the Javascript SDK

Calling FB.getLoginStatus() or ensuring status: true is set when you call FB.init() means that the next time a user lands on your application and is signed into Facebook, the authResponse object you are passed as a result of those calls will contain a fresh, valid access token.

In this case, its simply the act of the user using your application which implicitly generates a new access token.

Was Ihre andere Frage, hat die Facebook api was Batch Requests genannt wird, mit denen Sie ein paar api Abfragen machen in einer Anfrage, aber ich bin mir nicht sicher, ob es für den relativen Pfad "oauth/access_token" funktioniert, aber Sie können es gerne ausprobieren.

+0

@Nitaz Tomer ... Ich bekomme. Uncaught ReferenceError: Ungültige linke Seite in Zuweisung. Ich folgte der gleichen Syntax –

+0

@ RED.Skull das ist ein js Fehler .. Sie haben wahrscheinlich etwas falsch gemacht, wahrscheinlich ein '=' zum Vergleich statt zwei oder drei ('==' oder '==='). Wenn Sie es nicht lösen können, schlage ich vor, dass Sie eine völlig neue Frage darüber stellen, obwohl es wahrscheinlich einige gibt, die bereits auf dem Thema bestehen –