2016-02-02 64 views
1

除了常规的用户名/电子邮件/密码系统之外,我希望有用于登录的社交媒体按钮。但是,如何防止用户创建多个帐户?如何防止多个帐户与社交媒体登录?

比方说,有人通过在应用程序Facebook第一和做的事情,获取存储在连接到该帐户的数据库登录到我的应用程序。几周后,他想再次查看,但按下Google+登录按钮,现在看起来他失去了他的所有数据,因为该帐户没有“链接”。

  • 我可以创建一个选项供用户链接那里的帐户,但我该如何验证?除此之外,我必须合并数据库中的所有数据。
  • 也许这个API的内置功能呢?
  • 是否有某种社交媒体库处理此问题?
+0

用户的电子邮件ID是否与所有社交网络帐户相同? – Pr38y

+0

@ Pr38y不,有人可以为twitter和Facebook创建不同的电子邮件。 – Madmenyo

+0

是的!一种简单的方法是通过社交登录登录后,要求他们创建另一个与帐户关联的ID(可能使用他们现有的电子邮件)。就像Line(一个聊天应用程序),一个ID可以有多个社交登录帐户。 –

回答

2

如果用户使用相同的电子邮件ID,可以将用户ID一对一映射到电子邮件ID。当用户通过Facebook登录时 - Facebook身份验证令牌可以在数据库中更新。所有社交登录应用都需要单独列,用户可以从中登录。

在不同的电子邮件-ID的情况下,明确从连接其他网络按钮可以使用。

另一种选择是使用设备ID而不是电子邮件ID,但随后登录将具体到只是设备。这可能会导致同步来自不同手机的数据。

+1

我猜他们都映射到相同的电子邮件将是正确的方式。如果他想要保存他的数据,我会先询问用户的电子邮件。之后,他提出了将他的账户与社交媒体关联的选项。 – Madmenyo

+0

对于保存数据,首先可以将电子邮件ID作为默认值。如果用户使用其他电子邮件ID链接,则可以要求存储帐户首选项。它会减少用户交互。 – Pr38y

0

好吧,我不知道一个合适的答案,但我可以给周围的工作,在数据库中添加一个字段命名为“loginway”让我们说,然后当通过Facebook用户登录,您填写的字段1, google + 2 ...等当用户按社交按钮登录应用程序去检查字段,如果登录不同于原来的推广他,你已经登录与Facebook,请使用Facebook登录再次。

用户登录首次 - >日志中 用户登录所述第二时间使用G + - - >应用检查loginway - > loginway填充有1场得到一个消息框请登录经由>用户 - >它是从旧的一个不同第一种方法(脸书)。

我希望我帮助你,有一个愉快的一天。

0

在您的个人资料设置,你需要给选项添加其他帐户。 例如,如果用户使用Facebook登录并且您有Google作为其他选项,那么在设置时,应该可以选择为用户添加Google帐户。这样用户可以链接所有账户,然后可以从每个社交网络账户登录。您需要将所有帐户存储在后端,并且需要管理所有帐户。

+0

但问题是如何防止用户在第一次注册时注册2个帐户,不会将其链接到另一个帐户。 – Madmenyo