什么情况可以使用Facebook上的getUser()函数?

时间:2012-11-05 06:58:01

标签: php facebook

与标题相同,什么情况可以在Facebook上使用getUser()函数? 附:我正在使用facebook php sdk api。

为什么我问这个问题是因为我发现如果我不将网站放在facebook.com中,那么getUser()函数将始终返回null或0。

这是真的吗? getUser()函数只能在facebook.com里面的网站上工作吗?

感谢。 facebook的新手

1 个答案:

答案 0 :(得分:1)

如果有足够的数据可用于确定,则getUser方法应返回活动的facebook用户ID。这些数据可能来自不同的地方:

  1. 签名请求 - 这可能来自oauth身份验证流程,或者如果它是一个画布应用程序,当您的页面加载到<iframe>
  2. 时,facebook会将其嵌入到http POST中
  3. 以前保存的会话数据 - 如果先前尝试确定用户成功,则生成的用户ID将保存到会话变量中
  4. 访问令牌 - 在某些情况下,访问令牌可用于确定用户ID
  5. 有关详细信息,请参阅getUserFromAvailableData方法,从开发人员的角度来看,当用户在Facebook上进行身份验证时,getUser()将返回当前Facebook用户的ID,并且已安装/授权您的应用程序。要实现这一点,请参阅documentation on login,对于外部网站,最好的选择是使用facebook的javascript sdk的login方法来获取后端所需的数据(存储在Cookie中)。