-2

我有几个关于我的社交网络 iOS 应用程序中的 facebook 集成和身份验证的问题。

首先,我的应用程序的用户需要创建一个帐户并登录,然后才能使用任何内容。

我有一个单独的后端系统,因此支持在我的应用程序中进行常规帐户注册。当用户登录到一个帐户时,他或她会获得一个访问令牌,该令牌用于将来的后端请求,例如图像上传。

其次,用户可以选择使用 Facebook 登录,从而成功打开的FBSession.

这引出了我的第一个问题:如何使用从 Facebook 获取的访问令牌通过我的后端系统对我的用户进行身份验证?我是否应该将获取的令牌发送到我的后端并让系统为该特定用户使用令牌,直到另行通知,还是有其他方法可以解决这个问题?

--

现在假设我解决了第一个问题中的问题......
我的第二个问题:假设用户创建了一个帐户并以正常方式登录(即没有 facebook)下次该用户想要使用该应用程序时,他或她选择使用 facebook 登录。
现在,在我的后端系统中,我怎么知道这两个用户是相同的,将它们连接起来,从而能够为两种情况加载相同的内容?甚至有可能拥有支持这样的双重登录的混合帐户吗?常规注册只需要电子邮件、用户名和密码,所以我想不出一种方法来确定 facebook-loggedin-user 与 normal-loggedin-user 是同一用户。

我希望以上是有道理的。

4

2 回答 2

2

联合这两个成员的唯一方法是使用公共链接作为用户名或标识符,例如电子邮件。我确信 fb、google、yahoo 和其他人会转发用户的电子邮件帐户信息。您的数据库应该允许存储用户的电子邮件地址。然后,当用户使用 facebook 登录,然后第二天使用 gmail 登录时,障碍就变成了你要做什么,那是它变得棘手的时候,你必须实施一些机制来链接这些帐户。

于 2013-08-24T14:02:44.013 回答
1

常规注册只需要电子邮件、用户名和密码

在这种情况下,您可以要求用户向email您的应用授予权限。因此,通过匹配两封电子邮件(因为常规注册需要电子邮件),您可以确定此 facebook-loggedin-user 与 normal-loggedin-user 是同一用户。

但是是的,在某些情况下(非常少),您可能无法获取电子邮件(在 Facebook 注册有时不提供电子邮件);但是,注册过程将不会完成-所以我猜这不是问题。

于 2013-08-27T09:54:06.283 回答