我可以 link 一个同时拥有 Twitter 和 Facebook 的人吗?
Can I link a person with both twitter and facebook on parse?
我正在创建一个人们可以通过 facebook、twitter 或电子邮件注册的应用程序。找朋友的时候可以link他的facebook,twitter账号。
问题是,如果一个人已经 link 使用 facebook 或 twitter,我不能 link 使用其他帐户,所以每次这个人需要寻找朋友时都需要重新登录。
有没有办法让同一个用户同时拥有两个授权数据,这样当用户 link 同时使用 Twitter 和 Facebook 时,它会显示好友而无需再次登录?
谢谢!
我不认为这是可以做到的。由于 parse.com
不允许对同一用户进行多次 linking。此外,由于 linking 帐户在 Twitter 和 Facebook 上的安全性,我非常怀疑是否存在解决方法。因此,我会说在 Parse 中无法让同一用户 link 同时访问 Twitter 和 Facebook。
因此,您要么必须让用户多次登录才能找到朋友(这可能不会是世界末日,但远非理想),要么只能选择一项服务。我个人只会使用 Facebook,因为它不是关注者和关注者,实际上是共同的朋友。这只是我的意见,因为我不知道你申请的性质。
好问题。这对我来说也很难找到答案。不幸的是,解析用户 table 具有唯一的默认用户字段,并且要求每个帐户只有一个用户。我不管他们如何登录(通过 Facebook、Twitter、电子邮件等),只能有一个 username
password
of email
字段等。您可以在 Ask Parse Anything.
中观看他们谈论它以及为什么会这样
我知道这对于开发人员来说并不理想,因为他们需要为用户提供他们想要登录的平台上的选项。如果您同时添加两者,则用户必须记住他们的帐户是通过 Facebook 还是 Twitter 在您的情况下设置的。
但是,如果您想 keep/link Facebook 和 Twitter 方面的项目,您可以从 Facebook 中提取用户电子邮件(假设他们的 Facebook 和 Twitter 帐户使用相同的电子邮件)和 Twitter,并通过他们的电子邮件地址进行身份验证。
希望对您有所帮助。干杯!
答案是否定的。因为,Parse.com 对于一个应用程序只有一个用户 class,而在该用户 class 中,我们只有一个 -authData-(身份验证数据)。每当用户使用社交网络凭据登录时,该数据将用于会话。该 AuthData 最多包含 1 种类型。
有同样的问题,另外我也想要 Google+ 登录。我所做的是创建一个包含以下字段的 Account
对象:
- 提供商:字符串 - Twitter、Facebook、Google、...
- uniqueId:字符串 - 包含 Twitter ID、Facebook ID 等
- 用户:指针 - 包含与此 ID 关联的用户
然后我创建了一个脚本来浏览所有用户并将他们的 authData
导出到几个 Account
条目中。我还在 _User 上添加了一个 afterSave 挂钩来迁移新用户数据。
现在是困难的部分……由于 Parse 没有为我们提供社交登录的挂钩,我不得不在 Cloud Code 上手动处理所有事情。这个想法是使用来自 Facebook 和 Twitter 的 SDK 来获取用户的帐户 ID 和访问令牌。
然后将这些数据发送到 loginFromFacebook
/LoginFromTwitter
云函数,并控制 Facebook/Twitter ID 与访问令牌匹配(通过向 Facebook 的 Graph API 发出请求例子)。一旦您知道您拥有的用户 ID 是正确的,您需要检查它是否存在于 Account
中。如果是,您 return(使用 response.success)与此 ID 关联的 Parse 用户的会话令牌(Account.user 字段)并在客户端上使用 User.become
完成登录用户。如果没有,您需要创建一个新用户,在 Account
中添加 en 条目,并 return 新用户的会话令牌(+ 在客户端上执行 User.become)。
现在,多亏了 Account
table,您只需更改 Account
table 中的关联用户 ID,即可轻松获得 link/unlink 用户。您还可以轻松查看 Facebook 好友(如果您请求许可)。
我正在创建一个人们可以通过 facebook、twitter 或电子邮件注册的应用程序。找朋友的时候可以link他的facebook,twitter账号。
问题是,如果一个人已经 link 使用 facebook 或 twitter,我不能 link 使用其他帐户,所以每次这个人需要寻找朋友时都需要重新登录。
有没有办法让同一个用户同时拥有两个授权数据,这样当用户 link 同时使用 Twitter 和 Facebook 时,它会显示好友而无需再次登录?
谢谢!
我不认为这是可以做到的。由于 parse.com
不允许对同一用户进行多次 linking。此外,由于 linking 帐户在 Twitter 和 Facebook 上的安全性,我非常怀疑是否存在解决方法。因此,我会说在 Parse 中无法让同一用户 link 同时访问 Twitter 和 Facebook。
因此,您要么必须让用户多次登录才能找到朋友(这可能不会是世界末日,但远非理想),要么只能选择一项服务。我个人只会使用 Facebook,因为它不是关注者和关注者,实际上是共同的朋友。这只是我的意见,因为我不知道你申请的性质。
好问题。这对我来说也很难找到答案。不幸的是,解析用户 table 具有唯一的默认用户字段,并且要求每个帐户只有一个用户。我不管他们如何登录(通过 Facebook、Twitter、电子邮件等),只能有一个 username
password
of email
字段等。您可以在 Ask Parse Anything.
我知道这对于开发人员来说并不理想,因为他们需要为用户提供他们想要登录的平台上的选项。如果您同时添加两者,则用户必须记住他们的帐户是通过 Facebook 还是 Twitter 在您的情况下设置的。
但是,如果您想 keep/link Facebook 和 Twitter 方面的项目,您可以从 Facebook 中提取用户电子邮件(假设他们的 Facebook 和 Twitter 帐户使用相同的电子邮件)和 Twitter,并通过他们的电子邮件地址进行身份验证。
希望对您有所帮助。干杯!
答案是否定的。因为,Parse.com 对于一个应用程序只有一个用户 class,而在该用户 class 中,我们只有一个 -authData-(身份验证数据)。每当用户使用社交网络凭据登录时,该数据将用于会话。该 AuthData 最多包含 1 种类型。
有同样的问题,另外我也想要 Google+ 登录。我所做的是创建一个包含以下字段的 Account
对象:
- 提供商:字符串 - Twitter、Facebook、Google、...
- uniqueId:字符串 - 包含 Twitter ID、Facebook ID 等
- 用户:指针 - 包含与此 ID 关联的用户
然后我创建了一个脚本来浏览所有用户并将他们的 authData
导出到几个 Account
条目中。我还在 _User 上添加了一个 afterSave 挂钩来迁移新用户数据。
现在是困难的部分……由于 Parse 没有为我们提供社交登录的挂钩,我不得不在 Cloud Code 上手动处理所有事情。这个想法是使用来自 Facebook 和 Twitter 的 SDK 来获取用户的帐户 ID 和访问令牌。
然后将这些数据发送到 loginFromFacebook
/LoginFromTwitter
云函数,并控制 Facebook/Twitter ID 与访问令牌匹配(通过向 Facebook 的 Graph API 发出请求例子)。一旦您知道您拥有的用户 ID 是正确的,您需要检查它是否存在于 Account
中。如果是,您 return(使用 response.success)与此 ID 关联的 Parse 用户的会话令牌(Account.user 字段)并在客户端上使用 User.become
完成登录用户。如果没有,您需要创建一个新用户,在 Account
中添加 en 条目,并 return 新用户的会话令牌(+ 在客户端上执行 User.become)。
现在,多亏了 Account
table,您只需更改 Account
table 中的关联用户 ID,即可轻松获得 link/unlink 用户。您还可以轻松查看 Facebook 好友(如果您请求许可)。