我正在建立一个网站,您可以在其中注册 facebook - twitter 或 google plus,我想知道是否有什么东西可以连接这三个社交网站(公共 ID),所以我每个人只能有 1 个数据库行而不是 3 个数据库行就像当我尝试使用 facebook 登录并且我已经注册了 google 并且它使用相同的数据登录时没有为 facebook 提交新的行数据库,这意味着我需要找到一个可以在登录时使用的共同因素感谢阅读
问问题
1126 次
3 回答
1
没有保证的字段将在三者之间共享。您有两种可能的方法来处理这种情况:
1)使用电子邮件地址之类的东西,你可以得到这三个地址,并希望他们使用相同的地址。
2)他们使用其中一个登录帐户后,让他们自己将其他帐户与其他两个帐户关联。(或者甚至让他们多次链接来自同一服务的其他帐户。)
于 2013-06-06T10:18:32.610 回答
1
您可以尝试使用此库从提供商处获取信息:http ://hybridauth.sourceforge.net/ 从提供商处 获取信息后,您将获得连接提供商的唯一标识符。这样 - 您可以将该标识符用作系统中某些特定用户的提供者列。
例如,您可以有一个表:userId、userEmail、...、twitterIdentifier、googleIdentifier、facebookIdentifier
当用户首次与任何提供者连接时,您可以在数据库中创建一个新用户,并填充正确的提供者字段。登录时,您检查请求提供者的正确列,并知道它是哪个用户...
于 2013-06-06T10:26:11.970 回答
0
然后检查表中的用户 ID,并使用 uid 作为可更新参数更新同一行中的 twitter\Google\fb authos 字段。相关的 oauth id 对用户登录时间很有用
于 2013-06-06T10:09:05.607 回答