2012-01-05 54 views
1

我有这个网站上的Facebook登录领带,但无法让它正常工作。所以,我下载了最新的PHP SDK,并在这里建立的例子:Facebook的SDK/PHP的示例代码不起作用

http://thedrinknation.com/facebook-php-sdk-70030bb/examples/with_js_sdk.php

我已经有一些成功获得JavaScript来的工作,但从来没有PHP能够搞清楚用户是谁。 (注意:我上面发布的链接是从github下载的CLEAN代码 - 我只是更改了APPID和秘密ID)。

我正在寻找一些方向 - 我有一个错误的FB?像应用程序类型,或者什么?

-Jim

+0

你应该发布源代码,以便人们能够帮助你。记得在发布源代码之前隐藏您的APP ID和APP密钥。 – 2012-01-05 20:44:43

回答

0

JS-SDK正在以正确的方式设置cookie并返回登录状态。

该问题可能与您的服务器从不将cookie返回给浏览器这一事实有关。所以每次刷新页面时,新的cookie都由JS-SDK生成。它发送给浏览器的唯一cookie是 PHPSESSID,只有在丢失时才发送。

似乎每次调用FB.getLoginStatus()都会产生新的cookie。你确定你有像“App Domains”和“Site/Canvas URL”这样正确的应用程序设置吗?

+0

“这个问题可能与您的服务器从不将Cookie返回给浏览器这一事实相关 - ”为什么服务器会在每个响应中返回Cookie?请提供一份标题样本作为您的观点证明 – zerkms 2012-01-05 21:05:32

+0

Cookie用于维护会话状态,否则用户将不得不登录每个页面请求。 – DMCS 2012-01-05 21:10:11

+0

我从来没有说过它应该在每次请求时都返回。 – 2012-01-05 21:30:20