相关疑难解决方法(0)

为什么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;
}
Run Code Online (Sandbox Code Playgroud)

在一个持有SDK中的facebook对象的类中$this->_facebook.

然后在块上我这样做:

<?php if (!$this->isLoggedOnFacebook()): ?>
<div>
   <fb:login-button show-faces="true" perms="email" width="500" />
</div>
<?php endif ?>
Run Code Online (Sandbox Code Playgroud)

并且FB JS环境已正确设置(我认为),因此它可以工作.因此,用户可以弹出并授权该站点.

问题是即使在用户授权应用程序后,$ user始终为0,意味着$facebook->getUser()始终返回0,然后列出用户的面孔,包括已登录的用户,但如果我拨打电话$facebook->api('/me')或其他什么,那么它将会抛出无效的令牌异常.

我已经看到了这个问题,但我还没有看到解决方案,我不知道问题出在哪里,我的想法已经用完了.

在应用程序部分的开发人员的Facebook页面上有一个网站选项卡,您可以在其中设置您的站点URL和站点域,我认为这是我的问题的原因,但我不知道究竟是什么字段应该包含.

php facebook facebook-graph-api

39
推荐指数
3
解决办法
6万
查看次数

标签 统计

facebook ×1

facebook-graph-api ×1

php ×1