2012-03-07 2 views
1

私はPHP-SDKをテストしながら、以下をやってる:getAccessToken()は、https://graph.facebook.com/oauth/access_tokenへの手動呼び出しよりも短い文字列を返すのはなぜですか?

if($_REQUEST['state'] == $_SESSION['state']) { 
$token_url = "https://graph.facebook.com/oauth/access_token?" 
    . "client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url) 
    . "&client_secret=" . $app_secret . "&code=" . $code; 
$aContext = array('http' => array(
       'proxy' => 'tcp://192.168.55.40:80', 
       'request_fulluri' => true, 
       ), 
      ); 
$cxContext = stream_context_create($aContext); 
$response = file_get_contents($token_url, FALSE, $cxContext); 

$params = null; 
parse_str($response, $params); 

//$graph_url = "https://graph.facebook.com/me?access_token=" . $params['access_token']; 

//$user = json_decode(file_get_contents($graph_url, FALSE, $cxContext)); 
//var_dump($facebook->getAccessToken()); 
$facebook->setAccessToken($params['access_token']); 
$user = $facebook->api('/me'); 



var_dump($user);exit; 

$ facebook-> getAccessToken()48文字の文字列を返します。 params ['access_token']は112文字です。どうしてこれなの? SDKを使用して有効なアクセストークンを取得するには何が必要ですか?

答えて

0

ユーザーアクセストークンではなく、そのアプリケーションアクセストークンです。

SDKのgetAccessTokenを代わりに使用してみてください。

関連する問題