Facebook PHP SDK:无法从JavascriptHelper类获取访问令牌
我在客户端使用FB的Javascript SDK,在服务器上使用PHP SDK。 当我使用Facebook PHP SDK:无法从JavascriptHelper类获取访问令牌,php,facebook,Php,Facebook,我在客户端使用FB的Javascript SDK,在服务器上使用PHP SDK。 当我使用getSignedRequest()时,我可以看到已签名的请求包含code属性和正确的用户ID。然而,就我的一生而言,我不知道如何继续使用这个signedRequest来获得一个有效的访问令牌,我可以使用它来创建对用户信息等内容的进一步调用。我尝试通过实例化已签名的请求或调用$facebook对象以及jsHelper对象上的->getAccessToken()方法来查询访问代码,但没有返回任何内容。这是我的
getSignedRequest()
时,我可以看到已签名的请求包含code
属性和正确的用户ID。然而,就我的一生而言,我不知道如何继续使用这个signedRequest来获得一个有效的访问令牌,我可以使用它来创建对用户信息等内容的进一步调用。我尝试通过实例化已签名的请求或调用$facebook对象以及jsHelper
对象上的->getAccessToken()方法来查询访问代码,但没有返回任何内容。这是我的密码:
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;
}我从未使用过
JavaScriptHelper
,但是AccessToken
来自helper
而不是Facebook对象本身。试一试
$g = $jsHelper->getAccessToken();