2011-09-27 32 views
0

你好我想張貼到用戶的牆上,但出現以下錯誤:未捕獲 OAuthException:活動的訪問令牌必須用於查詢當前用戶的信息。拋出....Facebook應用程序未捕獲OAuthException:必須使用活動訪問令牌來查詢有關當前用戶的信息。拋出

我的Facebook的腳本是:

$appId = 'xxxxxx'; //change as necessary 
$appUrl = "xxxxx"; //change as necessary 
$baseUrl = "xxxxx/"; //change as necessary 
// Create our Application instance. 
$facebook = new Facebook(array(
    'appId' => $appId, 
    'secret' => 'xxxxxx', //change as necessary 
    'cookie' => true, 
)); 
$session = $facebook->getSession(); 
$fbme = null; 
// Session based graph API call. 
if (!$session) 
{ 
    $login_url = $facebook->getLoginUrl 
    (
    array 
     (
     "canvas" => true, 
     "fbconnect" => false, 
     "req_perms" => "user_location, email, publish_stream, friends_about_me, offline_access,", 
    ) 
    ); 
    echo "<script type='text/javascript'>top.location.href = '" . $login_url. "';</script>"; 
} 
$session = $facebook->getSession(); 
$me = null; 
// Session based API call. 
if ($session) { 
try { 
    $uid = $facebook->getUser(); 
    $me = $facebook->api('/me'); 
    $mail=$me[email]; 
    } catch (FacebookApiException $e) { 
    error_log($e); 
    } 

} 

$signed_request = $_REQUEST["signed_request"]; 
list($encoded_sig, $payload) = explode('.', $signed_request, 2); 
    $data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true); 
    $token=$data[oauth_token]; 
    $attachment = array('message' => '', 
     'access_token' =>$token, 
     'name' => '', 
     'caption' => "", 
     'link' => '', 
     'description' => '', 
     'picture' => '', 
     'actions' => array(array('name' => 'Get Social', 
             'link' => '')) 
    ); 


$result = $facebook->api('me/feed','post',$attachment); 

我怎樣才能獲得用戶的訪問令牌?

回答

1

打開這在瀏覽器中:

https://graph.facebook.com/oauth/authorize? 
    type=user_agent& 
    client_id=[APP ID]& 
    redirect_uri=http%3A%2F%2Fxyz.com& 
    scope=user_photos,email,user_birthday,user_online_presence 

你會被重定向到:

http://xyz.com/#access_token=[ACCESS TOKEN]. 

,你有你的訪問令牌,你可以繼續使用它:

https://graph.facebook.com/me?access_token= 
    [ACCESS TOKEN] 
相關問題