2010-12-14 59 views
0

Salut tout le monde, J'essaie d'obtenir le session_key et secret pour une session facebook (offline_access) dans l'application de toile.facebook get session_key pour offline_access dans l'application de toile

Cependant, je suis incapable d'obtenir ces deux variables particulières. Quand je teste le même code local, je peux obtenir les variables ci-dessus (mais cela peut être parce que l'application locale est pas une application de toile)

Je suis en utilisant le code suivant, pour redirect:

$facebook->getLoginUrl(array(
    'canvas' => 1, 
    'fbconnect' => 0, 
    'req_perms' => 'user_status,publish_stream,offline_access' 
)); 

Quelqu'un peut-il me suggérer sur la façon dont je peux saisir le session_key et secret, lorsque l'utilisateur autorise l'application? (Pour l'accès en ligne permanent)

Voici un exemple session décharge via Facebook:

Array (
    [uid] => 100000926583671 
    [session_key] => 
    [expires] => 0 
    [secret] => 
    [base_domain] => 
    [access_token] => 183043495039366|3ab6ac2asdkhj1bcfdec13d7-100000926583671|jJQaIT-n80YxioAasdwN0cm99U 
    [sig] => 2f64sadasc1da31c12927a052752776 
) 

et ceci est l'erreur:

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

Répondre

1

session_key et secrets sont maintenant dépréciée, et Facebook veut que vous utilisiez le schéma d'authentification Oauth. Ensuite, vous devrez utiliser access_token (que vous obtenez correctement dans $ session) pour faire vos appels api.

Essayez:

$session = $facebook->getSession(); 
$me = $facebook->api('/100000926583671', 
        array('access_token' => $session['access_token']) 
    ); 
var_dump($me); 

Ref: http://developers.facebook.com/docs/authentication/

+0

Avez-vous une idée devrait 'sig' être utilisé? –