[英]How do you use a Facebook user object to get your own user object?
我正在使用Facebook Connect进行一些工作,想知道如何在Stack Overflow上使用其他登录提供程序(例如Facebook或Yahoo)登录,并且该站点能够在您注册时获取用户详细信息在堆栈溢出? 据我所知,您可以使用其他电子邮件地址注册,并且您的名字和姓氏不是唯一的标识符,那么该怎么做?
这完全取决于您的用例。 例如,我使用电子邮件地址作为唯一标识符。 当您使用Facebook登录时,我的门户网站还会从Facebook询问您的电子邮件地址。 然后,它从数据库中搜索具有匹配电子邮件地址的用户对象。
有多种方法可以做到这一点:
如有任何疑问,请将其写在评论中。 :)
您很可能会在用户表上添加一个新列,例如facebook_uid。 然后,如果用户有一个现有帐户,则可以让他们先登录该帐户,然后再连接到Facebook,然后可以将其facebook_uid存储在现有的user_id中。 然后,如果用户出现并且已经登录到Facebook,则也可以将其登录到您的网站。 如果用户在您的网站上没有现有帐户,则只需创建一个帐户(可能用来自Facebook的用户名填充该帐户)
如果您想允许多种登录方式,则可能会有另一个表,该表保存提供者(facebook,twitter,google等)与该帐户的关联ID之间的映射,并返回到您的用户表。
基本原理是,当他们使用第三方登录系统登录时,可以将其映射到站点上的当前帐户,或者如果站点上尚不存在则在站点上创建新帐户,然后将其映射到该帐户。 您显然需要向用户明确这一点,或者有某种合并帐户的方式,以防他们在使用第三方时尚未登录。 您还可能会要求从Facebook访问电子邮件,并尝试在创建新帐户之前将其映射到现有帐户
谢谢
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.