Facebook 管理页面详细信息

facebook manage pages details

我正在尝试通过 php SDK

访问 Facebook 页面

使用php-sdk-4.0.13

Facebook 应用程序版本 v2.2

并像这样重定向 url https://www.facebook.com/v2.2/dialog/oauth?redirect_uri=http//www.example.com/john114614/settings&state=5255ad86fea19ab0e8d61776890d0224&scope=manage_pages&client_id=558252720931906&ret=login&sdk=php-sdk-4.0.13&ext=1431067051&hash=AeYVfkUZEGLy0wD_

它停留在 302 状态并重定向到 http//www.example.com/john114614/settings?code=blahbla.......

App id 是完美的,并且解决了之前 5-6 天遇到的这个问题,它工作正常。

请帮我解决这个问题?

谢谢

您没有指定 response_type,请参阅

在您的情况下,您会得到一个 code,之后您需要将其交换为访问令牌。如果您指定您的登录 url 如下

https://www.facebook.com/v2.2/dialog/oauth?redirect_uri=http://www.example.com/john114614/settings&scope=manage_pages&client_id=558252720931906&response_type=token

恕我直言,它应该可以工作。

上述问题的解决方案

use Facebook\FacebookSession;

use Facebook\FacebookRedirectLoginHelper;

use Facebook\GraphUser;

use Facebook\FacebookRequestException;

FacebookSession::setDefaultApplication('appid84', '0secret0a626c6');

$helper = new FacebookRedirectLoginHelper('http://tmd.local/fblogin.php');

try {

  $session = $helper->getSessionFromRedirect();


}
 catch(FacebookRequestException $ex) {
}

 catch(\Exception $ex) {
}
if ($session) {

  var_dump($session);

}

else
{
  $loginUrl = $helper->getLoginUrl();

 header("location:".$loginUrl);

  exit;
}