2011-11-23 21 views
0

我试图将我们的产品链接到Facebook登录插件。它提到了data-perms属性来获取关于用户的数据,供我们自己使用(也就是说,我们可以在我们的数据库中创建一个用户帐户。很明显,我们无法获得密码,但我想知道哪些属性我们可以访问,目前唯一可以找到的是email和user_checkins。有人知道其他选项是什么吗?我已经Google搜索了一段时间,但是我找不到任何明确的列表或任何其他内容。我发现的只有文档是http://developers.facebook.com/docs/guides/web/#login,其中只提到了上述两个字段。Facebook的数据传输有哪些选择?

另外,如何在登录后访问信息?我仍在研究此问题,但如果任何人都可以对此进行快速回答我很欣赏它

编辑:刚刚发现一个明显的确定性lis现有数据的T:http://developers.facebook.com/docs/reference/api/user/

问候, 理查德

+0

https://developers.facebook.com/docs/authentication/permissions/列出不同的权限,并将它们分成不同的类别 – Igy

回答

0

时,取约从Facebook用户,你既可以使用图形API或FQL数据,图形API是这两个比较简单的一个。

要探索Graph API,您可以使用Facebook's Graph Explorer。单击资源管理器中的“获取访问令牌”按钮可显示所有不同的“特殊许可”。

您可以通过Facebook Graph的不同功能以及如何使用Facebook here工作服务器到服务器来查找文档。

如果您对获取客户端信息更感兴趣,您应该查看JavaScript SDK documentation

为了访问有关用户的数据,他们已经登录后你可以简单地做一个API调用:

https://graph.facebook.com/me?access_token=THETOKENYOUGOTFROMFACEBOOK

这将检索该令牌属于用户的信息。

0

看来您并未使用OAuth 2.0,建议尽快使用新的实现。如果你这样做,你应该用data-scope代替data-perms,并且可以找到可用的“许可”列表here

此外,您看起来在这里有点困惑,这个字段意味着用户授予您的应用访问这些数据的权限......这并不意味着登录插件将返回它!
例如,您不提供namefirst_name,因为只要用户允许您的应用程序提供这些数据(即使没有任何许可)。

+0

感谢您指出 - 特别是第二位。是的,我可能有点困惑,但看起来其他答案会让我得到我想要的信息。基本上,我们的客户已经要求将Facebook登录按钮与我们的标准登录表单集成,以便用户可以登录,或者如果他们没有我们的服务器上的帐户,只使用来自Facebook的最基本信息创建一个帐户 - 电子邮件,名字姓氏和其他可能的细节。我们会给他们分配一个随机密码,但只要他们登录到Facebook,它将绕过密码,如果某一列... – ClarkeyBoy

+0

...包含他们的FB用户ID。我们会在注册时获得用户ID,并附上电子邮件等信息,并将其放在某个列中,以便我们可以将该FB用户标识与users表中该行的唯一标识关联起来。请注意,随机密码仅用于安全目的 - 阻止用户无密码登录账户。 – ClarkeyBoy

+0

请注意!这有点棘手......如果现有用户试图通过Facebook登录他使用不同的电子邮件呢?或选择不与他人分享他的电子邮件(Facebook会在这种情况下返回代理电子邮件)?你会为同一个用户拥有两个不同的账户!最好的办法是在登录后询问FB用户是否有一个现有帐户将该帐户的用户名/电子邮件和密码并进行链接。 – ifaour

相关问题