【发布时间】:2014-02-11 05:33:26
【问题描述】:
我在我的服务器上从 Github (https://github.com/facebook/facebook-php-sdk) 下载了 PHP SDK,但无法让 example.php 工作:
- 当我在 Safari 中打开 example.php 时,我得到 - 你没有连接
- 我点击登录链接
- 我输入用户并传递给 Facebook
- 浏览器重定向回我的 example.php - 有“状态” 和 URL 中的“代码”参数
- example.php 仍然显示“您未连接”(这是 我的问题的本质)
- 如果我添加:
print $facebook->getAccessToken();- 它会打印一个访问 令牌(!!!)
所以我的问题是 - example.php 的问题是什么?
如果我有来自 Facebook 的访问令牌,为什么 $facebook->getUser() 什么都不返回?
如何让 example.php 工作,以便我可以继续开发自己的逻辑?
PS:同时这里的 PHP 代码示例:https://developers.facebook.com/docs/authentication/ 工作得很好,所以看起来我对 Github 的 php-sdk 有问题……Github 库是稳定的还是正在进行中,哪个不能用于生产?
【问题讨论】:
-
可以显示example.php的内容吗?我使用过 FB API,但没有使用他们的 SDK
-
给你:github.com/facebook/facebook-php-sdk/blob/master/examples/…,另一方面,FB 网站上的普通 php 示例不适合我
-
请删除带有 fbs_ 或 fbsr_ 前缀的 cookie,然后重试。如果它仍然给你错误,那么让我们知道它是 fbs_(Oauth) 或 fbsr_(Oauth 2.0)。
-
我有一个名为:fb_312545812129094_state 的 cookie,删除了我拥有的所有 cookie,但问题仍然存在。为了以防万一,尝试了更多浏览器,但没有
-
哦,也许我明白了。对于您的应用,启用了 oauth 1.x 而不是 Oauth 2.0。只需转到您的应用设置页面。单击编辑设置,然后转到高级选项卡。并检查 Encrypted Access Token: 是否启用。它应该被启用。并在重新运行之前删除该 fb_ cookie。
标签: php facebook facebook-php-sdk