Besoin d'Aide sur OAuthException Code 2500

Je suis en train de développer un Facebook application (apps.facebook.com/some_app) à l'aide de PHP où j'ai besoin de quelques informations de l'utilisateur de la musique intérêts. J'ai trouvé que sa vertu "user_likes > les jeux".

Mes problèmes sont les suivants:

  • Pour accéder, j'ai implémenté le protocole oauth dialogue comme méthode
    suggéré dans l'API dans ma page index.

$auth_url = "http://www.facebook.com/dialog/oauth?client_id="
            . $app_id . "&redirect_uri=" 
            . urlencode($canvas_page)
            ."&scope=user_likes";
  • Après le succès de l'autorisation, je reviens à la page d'index avec "code"
    en tant que paramètres.

http://MY_CANVAS_PAGE/?code=some base64 encoded letters
  • Tout d'abord, je ne sais pas si j'ai besoin de access_token juste pour lire de l'utilisateur de la musique
    intérêts, mais j'ai essayé toutes les méthodes proposées. Je ne pouvais pas bouger
    en avant de ce point
  • J'ai un code comme celui-ci (dans ma page d'index), qui redirige l'autorisation si le code des paramètres n'est pas définie.

if(empty($code) && !isset($_REQUEST['error'])) {
  $_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection
  echo("<script> top.location.href='" . $auth_url . "'</script>");
}
  • Actuellement, je suis juste essayer d'obtenir de l'utilisateur du public à l'information ici, mais
    sans succès. J'ai essayé le signed_request méthode, comme l'a suggéré
    mais pas de succès

$signed_request = $_REQUEST["signed_request"];
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);
echo ("Welcome User: " . $data["user_id"]);

print_r($decoded_response);

stdClass Object ( [error] => stdClass Object ( [message] => An active 
access token must be used to query information about the current user. 
[type] => OAuthException [code] => 2500 ) ) 

Pour obtenir de l'utilisateur du public info, j'ai essayé aussi l'exemple en PHP SDK


$facebook = new Facebook(array(
'appId'  => MY_APP_ID, //registered facebook APP ID
'secret' => MY_SECRET, //secret key for APP
));

$fb_user = $facebook->getUser();

if($fb_user){
    try {
      $user_profile = $facebook->api('/me');
      echo $user_profile['email'];
    }
    catch(FacebookApiException $e) {
      $fb_user = null;
    }
}

Mais sans succès. Quelqu'un peut-il m'expliquer pourquoi j'obtiens cette erreur et comment y avoir accès de l'utilisateur, de la musique d'intérêt correctement. Probablement que j'ai mal compris l'API.

Grâce

Deepak

Avez-vous trouvé une solution? J'obtiens cette erreur, même sur graph.facebook.com/me l'url. Ne devrait-il pas me rendre mon facebook informations?

OriginalL'auteur Laraveldeep | 2012-02-19