2012-10-18 10 views
1

J'ai une application Android où l'utilisateur s'authentifie avec facebook. Maintenant, je fais une demande de poste à mon serveur et j'ai envoyé le access_token de facebook à ce serveur. Sur le serveur, je veux maintenant accéder aux informations de l'utilisateur en passant simplement le access_token à l'API du graphe Facebook. Y a-t-il une solution pour le faire? Le problème est que l'utilisateur utilise simplement l'application et que le serveur web doit s'authentifier avec access_token. Merci!php facebook graphique api requête avec access_token

+0

Bien sûr, cela est possible - l'API ne se soucie pas un jeton d'accès vient, tant que sa validité. – CBroe

+0

Alors, comment ferais-je cela en php, c'était ma question. Pardon. – Phil123

+0

Vous avez déjà le access_token, pourquoi ne pas utiliser l'API Graph pour obtenir les informations utilisateur? –

Répondre

6

Oui - c'est en fait très "simple" (pour ce qui est de Facebook).

Pour vous guider à travers les étapes:

  1. Mise en place: Dans facebok applications pour les développeurs, assurez-vous que vous avez défini le mobile (Android) et les paramètres site pour la même application. Ils ont besoin de partager l'ID de l'application et le secret
  2. Configurer: Télécharger le PHP SDK for Facebook. Cela rend beaucoup plus simple que la lutte contre les appels "Graph" bruts.
  3. Processus: Lorsque l'utilisateur se connecte sur votre mobile, vous obtenez le «jeton d'accès». C'est l'élément que vous voulez transmettre à votre serveur PHP.
  4. Processus: En PHP, lorsque vous initialisez votre classe Facebook, dites-lui de ne pas utiliser de cookies.
  5. Processus: En PHP, après l'initialisation de la classe, utilisez la fonction SetAccessToken du SDK pour utiliser le jeton d'accès que vous avez dans votre application mobile.
  6. Processus: Ensuite, lorsque vous faites /me appels, vous serez le même utilisateur qui a acquis le jeton sur mobile.
Exemple de code

:

$facebook = new Facebook(array(
    'appId' => 'YOUR_APP_ID', 
    'secret' => 'YOUR_APP_SECRET', 
    cookie : false 
)); 

// Use the token you sent 
$facebook->setAccessToken($sentToken); 

// Get User ID 
$user = $facebook->getUser(); 
+0

Merci beaucoup, l'étape 5 m'a aidé à continuer! – Phil123