这个 Facebook PHP SDK 快把我逼疯了!
getUser() always return 0
让我解释一下我的工作:
$facebook = new Facebook(array(
'appId' => FACEBOOK_APP_ID,
'secret' => FACEBOOK_SECRET,
));
$user = $facebook->getUser();
if ($user === 0)
{
$loginUrl = $facebook->getLoginUrl(array(
'scope' => 'email, publish_stream',
'redirect_uri' => FB_REDIRECT_URI
));
echo "<script type='text/javascript'>window.location = '$loginUrl';</script>";
exit();
}
简单的代码,相当于示例。好的...
我在 login.php 和 complete.php 中有这段代码
我从 login.php 发送请求并将 redirect_uri 设置为 complete.php (与我在使用 Facebook 登录的网站中写的一样......显然是一个完整的 URL,如https://www.example.com/complete.php)
我真的不明白为什么我仍然得到0!这是不可能的,我按照 LoginURL 登录 Facebook。
我还通过 URL 传递了“权限”。
我已经在这个app注册了,所以我真的不明白为什么这个SDK一直返回0。
有人可以帮助我吗?
信息:
我只选择了带有 Facebook 登录的网站,没有其他...“Facebook 上的应用程序”未选择。
编辑:
https://www.facebook.com/login.php?api_key=216182291818102&skip_api_login=1&display=page&cancel_url=https%3A%2F%2Fwww.example.com%2Fusers%2Fcomplete%2F%3Ferror_reason%3Duser_denied%26error%3Daccess_denied%26error_description%3DThe%2Buser%2Bdenied%2Byour%2Brequest.%26state%3D720fab495a21639032816d3c688ae87b&fbconnect=1&next=https%3A%2F%2Fwww.facebook.com%2Fdialog%2Fpermissions.request%3F_path%3Dpermissions.request%26app_id%3D216182291818102%26redirect_uri%3Dhttps%253A%252F%252Fwww.example.com%252Fusers%252Fcomplete%252F%26display%3Dpage%26response_type%3Dcode%26state%3D720fab495a21639032816d3c688ae87b%26perms%3Duser_birthday%252Cemail%26fbconnect%3D1%26from_login%3D1%26client_id%3D216182291818102&rcount=1