使用php sdk在facebook中获取访问令牌时出错

Sub*_*Sah 9 php facebook facebook-graph-api

我正在使用的代码:

$fb = new Facebook\Facebook([
  'app_id' => '{app-id}',
  'app_secret' => '{app-secret}',
  'default_graph_version' => 'v2.6',
  ]);

$helper = $fb->getCanvasHelper();

try {
  $accessToken = $helper->getAccessToken();
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  // When Graph returns an error
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  // When validation fails or other local issues
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}

if (! isset($accessToken)) {
  echo 'No OAuth data could be obtained from the signed request. A user has not authorized your app yet.';
  exit;
}

// Logged in
echo '<h3>Signed Request</h3>';
var_dump($helper->getSignedRequest());

echo '<h3>Access Token</h3>';
var_dump($accessToken->getValue());
Run Code Online (Sandbox Code Playgroud)

输出: 这仅表示:无法从签名请求中获取OAuth数据.用户尚未授权您的应用

我正在使用我的页面的app_id和app_secret.

任何帮助将不胜感激!!

小智 0

您使用的示例“(...)涵盖从应用程序画布的上下文中获取访问令牌和签名请求(...)”。 https://developers.facebook.com/docs/php/howto/example_access_token_from_canvas

应用程序画布的上下文意味着您的应用程序嵌入在 Facebook (iframe) 上。 /sf/answers/2916883021/

我假设您想在您的网站上使用 API。那么你正在寻找这个: https ://developers.facebook.com/docs/php/howto/example_facebook_login