如何为 Graph Api For PHP facebook SDK 获取长期访问令牌?

Bal*_*r B 3 php facebook facebook-graph-api

我试图按照方式 在此处输入图片说明

但是我收到错误“访问令牌不属于应用程序”我在我的应用程序 ID 和 secrt id 中检查了很多时间,应用程序 ID 是正确的但是这个错误一次又一次地显示我没有 peridict 这个错误?而且我也尝试过以下方式

https://graph.facebook.com/v2.2/oauth/access_token?grant_type=fb_exchange_token&client_id=CLIENT_ID &client_secret = SECRED CODE&fb_exchange_token = EAACEdEose0cBAJRZCZBIaDmW3oOO6SHaOkQLKdgyjp1evGoQ19mYcZCXu5wWLwZABJUbV77tjPjiE2pac2fDEmjM1tZAZB8hflSyERXFWIZB2DtzZAGSgVX6Ukb0ZAZAzd6pohnZBXU0T2aqYwf1umUxsfgHQXBNmM15yhdZBG2Br

小智 5

PHPsdk 5 和 v2.8

$fb = new Facebook\Facebook([
  'app_id'                => 'xxxxxxxxx',
  'app_secret'            => 'xxxxxxxxxxxxxxxxxxxxxxxxxxx',
  'default_graph_version' => 'v2.8',
]);

$helper = $fb->getRedirectLoginHelper();
try {

  $accessToken = $helper->getAccessToken();
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  // There was an error communicating with Graph
  echo $e->getMessage();
  exit;
}

$client = $fb->getOAuth2Client();
try {
  // Returns a long-lived access token
  $accessTokenLong = $client->getLongLivedAccessToken($accessToken);
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  // There was an error communicating with Graph
  echo $e->getMessage();
  exit;
}

if (isset($accessTokenLong)) {
  // Logged in.
  $_SESSION['facebook_access_token'] = (string) $accessTokenLong;
}
Run Code Online (Sandbox Code Playgroud)

参考网址:https : //www.sammyk.me/upgrading-the-facebook-php-sdk-from-v4-to-v5