为什么Facebook PHP SDK getUser总是返回0?
我正在尝试使用一个需要Facebook用户提供信息的网站,我正在使用PHP和JS SDK。
我有一个PHP函数:
public function isLoggedOnFacebook() { $user = $this->_facebook->getUser(); if ($user) { return $this->_facebook->api("/$user"); } return false;}
在一个持有SDK中的facebook对象的类中$this->_facebook
。
然后在块上我这样做:
<?php if (!$this->isLoggedOnFacebook()): ?><div> <fb:login-button show-faces="true" perms="email" width="500" /></div><?php endif ?>
并且FB JS环境已正确设置(我认为),因此它可以工作。因此,用户可以弹出并授权该站点。
问题是即使在用户授权应用程序后,$ user始终为0,意味着$facebook->getUser()
始终返回0,然后列出用户的面孔,包括已登录的用户,但如果我打电话$facebook->api('/me')
或其他什么,那么它将会抛出无效的令牌异常。
我已经看到了这个问题,但我还没有看到解决方案,我不知道问题出在哪里,我的想法已经用完了。
在应用程序部分的开发人员的Facebook页面上有一个网站选项卡,您可以在其中设置您的站点URL和站点域,我认为这是我的问题的原因,但我不知道究竟是什么字段应该包含。
蓝山帝景