2017-04-01 74 views
0

我在客戶端和服務器上使用了FB的Javascript SDK。 我可以看到,當我使用getSignedRequest()我得到包含code財產和正確的userId簽名的請求。然而,對於我的生活,我無法弄清楚如何繼續使用這個signedRequest獲得一個有效的訪問令牌,我可以使用它來創建更多的用戶信息調用。我試圖通過嘗試實例化已簽名的請求或調用$ facebook對象上的 - > getAccessToken()方法以及jsHelper對象來嘗試訪問代碼,但沒有任何內容返回給我。這裏是我的代碼:Facebook PHP SDK:無法從JavascriptHelper獲取訪問令牌類

require_once 'src/autoload.php'; 
$facebook = new Facebook\Facebook([ 
    'app_id' => $AppId, 
    'app_secret' => $AppSecret, 
    'default_graph_version' => 'v2.8', 
]); 


$jsHelper = $facebook->getJavaScriptHelper(); 
$signedRequest = $jsHelper->getSignedRequest(); 

if ($signedRequest) { 

try { 
    $codeField = $signedRequest->get('code'); 

    $g = $facebook->getAccessToken(); 
    //I would hope this would be the access token, but sadly it's an empty  
    value. 
    error_log($g); 

} catch(Facebook\Exceptions\FacebookResponseException $e) { 
error_log("fbResp Ex: ". $e->getMessage()); 
exit; 
} catch(Facebook\Exceptions\FacebookSDKException $e) { 
    error_log("SDK Ex: ". $e->getMessage()); 

    exit; 

}

回答

0

我從來沒有使用過​​但AccessToken來自helper不是Facebook對象本身。嘗試

$g = $jsHelper->getAccessToken(); 
相關問題