PHP SDK-如何让example.PHP工作


PHP SDK - How to get example.php to work?

我从Github下载了PHP SDK(https://github.com/facebook/facebook-php-sdk)在我的服务器上,但无法让example.php工作:

  1. 当我在Safari中打开example.php时,我得到-你没有连接
  2. 我点击登录链接
  3. 我输入用户并传递到Facebook
  4. 浏览器重定向回我的example.php-有"state"和URL中的"代码"参数
  5. example.php仍然显示"您未连接"(这是我问题的本质)
  6. 如果我添加:print $facebook->getAccessToken();,它将打印Access代币(!!!)

所以我的问题是,example.php的问题是什么?如果我有来自Facebook的访问令牌,为什么$facebook->getUser()不返回?

如何让example.php工作,这样我就可以继续开发自己的逻辑了?


PS:同时这里的PHP代码示例:https://developers.facebook.com/docs/authentication/工作得很好,所以看起来我对Github的php-sdk有问题。。。Github库是稳定的,还是正在进行中,不能用于生产?

您下载了哪个版本的PHP SDK。PHP SDK 2.0版存在此问题。

$facebook->getUser()不返回任何内容。

这在PHP SDK 3.0中得到了解决。下载版本3并尝试使用它。

好的,明白了。。。在你创建一个Facebook应用程序几个小时后,你会从API得到相当奇怪的结果。example.php现在似乎没有任何变化——我真的相信这是API服务器的错,cz代码现在肯定有效。

示例脚本在初始化facebook对象时不添加baseurl参数。我还花了几个小时试着调试同样的东西。js的例子起了作用。在那之后,我添加了baseurl,它就工作了。

$facebook = new Facebook(array(
  'appId'  => '406058216186755',
  'secret' => 'adsaqer4sdfsdgfgfg21341324324',
  'baseurl' => 'http://ironhide.maanas.co/oauth/facebook.php'
));

您确定使用了:echo$facebook->getUser()吗?

我建议您:http://developers.facebook.com/docs/authentication/

使用PHP SDK v3,v2被窃听了!

祝好运