为什么PHP SDK无法设置Facebook会话?

时间:2012-02-14 17:12:09

标签: php facebook facebook-graph-api facebook-javascript-sdk facebook-php-sdk

当Facebook会话使用我的应用程序到期时,我必须使用Javascript SDK来创建新会话。这非常令人讨厌,因为对于用户来说,他们偶尔会像我在大多数检测服务器端那样注销。然后,当他们重新加载页面并执行javascript时,会重新创建会话。

我知道我可以通过使用javascript显示一条消息“请重新加载页面”(很像StackOverflow)来解决这个问题,但是,我不希望我的用户必须这样做。我接受PHP SDK无法做到这一点,但我是否可以使用PHP而不是Javascript来实现它?

任何人都可以解释为什么PHP无法做到这一点?

1 个答案:

答案 0 :(得分:1)

PHP正在您的服务器上运行,这与Facebook的服务器无关。请记住,cookie已锁定到原始域。该cookie似乎是由您的服务器设置的,其原始域名为“yoursite.com”,而不是“facebook.com”。

另一方面,JS在客户端上运行,对Facebook服务器的任何请求也将遵守Facebook服务器设置的任何cookie。