这个问题已经在这里有了答案: > Why is Facebook PHP SDK getUser always returning 0? 26个
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>';
}
这是我的简单代码;
当链接被点击,并接受许可复选框,然后我重定向到脚本,并获得该PARAMS:http://mydomain.com/fb.php?state=82e166c6a85fd3b44ad655851f885b73\u0026amp;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.
¿有人知道这里发生了什么吗?
解决方法:
请再次重新检查您的设置,包括appId,机密信息,并确保在您的应用仪表板上禁用了“沙箱模式”.
更改网站域后,我遇到了同样的问题.尽管我正确地更改了request_uri参数,并使用新域更新了我的应用设置,但错误始终出现.然后我意识到我的Facebook APP的ID和SECRET ID已自动更改,没有任何警告!整个过程再次使用新的ID重新开始.
一些专家表示,由于沙箱模式,他们也面临与您相同的问题.
在Facebook Developers Apps页面上,确保已禁用“沙箱模式”.
另一件事是权限范围,您可以设置如下:
$pram = array(
'scope' => 'user_birthday,read_stream',
'redirect_uri' => 'http://domain.com/some_where_else/'
)
$loginUrl = $this->facebook->getLoginUrl($pram);
可能会对您有帮助.
谢谢.
标签:php,facebook-php-sdk 来源: https://codeday.me/bug/20191011/1894270.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。