【问题标题】:Facebook getUser() always returns 0 [PHP SDK 3.1.1] [duplicate]Facebook getUser() 总是返回 0 [PHP SDK 3.1.1] [重复]
【发布时间】:2013-02-16 14:31:44
【问题描述】:

fb.php:

ini_set('display_errors','On');
error_reporting(E_ALL);
require_once 'facebook/src/facebook.php';

$facebook = new Facebook( array (
    'appId'  => '****',
    'secret' => '****',
    'cookie' => true
  )
);

$user = $facebook->getUser();

if ($user) {
    var_dump($user);
  $logoutUrl = $facebook->getLogoutUrl();

  print '<a href="'.$logoutUrl.'">Logout</a>';
} 
else {
    $loginUrl = $facebook->getLoginUrl();
  print '<a href="'.$loginUrl.'">Login</a>';
}

这是我的简单代码; 单击链接并接受权限框后,我将被重定向到脚本,并获取此参数:http://mydomain.com/fb.php?state=82e166c6a85fd3b44ad655851f885b73&amp;code=AQCMo6L5z-K5juFl3cojl80KllKQ8JE2iKMaOFSmHhHgAFd_V-BfD8YZwbiKQasNuHSbcc4St-9B2gggwEMygn223u8BVK9zXKctEui-y20rcmydx-uf65sw5v6o4XN3k9Lnvtg0jg7h1C9XGC3S1sW32X65CI6kjbe7GXHICpMsT833wDxG1voS7enq9uYm1MGrp83ceTmKvoKGyn_iYby0#_=_

在这些问题之后,我找到了这个链接suddenly, getUser became to return 0.(PHP 3.1.1 SDK),但对我不起作用。

我使用的是 PHP Facebook SDK 版本 3.1.1。

¿有人知道这里发生了什么吗?

【问题讨论】:

标签: php facebook-php-sdk


【解决方案1】:

请再次检查您的设置,包括appIdsecret,并确保Sandbox Mode 在您的应用仪表板上禁用

更改网站域后,我遇到了同样的问题。尽管我正确更改了 request_uri 参数并使用新域更新了我的应用程序设置,但错误仍然出现。然后我意识到我的Facebook APP的ID和SECRET ID已经自动更改了,没有任何警告!整个过程使用新 ID 重新开始工作。

一些专家说他们也因为沙盒模式而面临同样的问题。 在 Facebook 开发者应用页面中,确保 Sandbox Mode禁用

另一件事是权限范围,您可以设置如下:

$pram = array(
           'scope' => 'user_birthday,read_stream',
           'redirect_uri' => 'http://domain.com/some_where_else/'
        )
$loginUrl = $this->facebook->getLoginUrl($pram);

也许会对你有所帮助。 谢谢。

【讨论】:

  • 为我工作,谢谢。仅仅因为一个单选按钮没有被点击,一整天的调试就结束了……
猜你喜欢
  • 2013-10-03
  • 2013-03-19
  • 1970-01-01
  • 1970-01-01
  • 2012-08-04
  • 1970-01-01
  • 2014-03-29
  • 2011-10-11
  • 1970-01-01
相关资源
最近更新 更多