Facebook PHP SDK:无法从JavascriptHelper获取访问令牌类
问题描述:
我在客户端和服务器上使用了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;
}
答
我从来没有使用过但AccessToken
来自helper
不是Facebook对象本身。尝试
$g = $jsHelper->getAccessToken();