facebook 登录是不是要求我在我的应用程序中使用 PFUser(使用 parse.com)?
Posted
技术标签:
【中文标题】facebook 登录是不是要求我在我的应用程序中使用 PFUser(使用 parse.com)?【英文标题】:Does facebook login require that I use PFUser in my application (using parse.com)?facebook 登录是否要求我在我的应用程序中使用 PFUser(使用 parse.com)? 【发布时间】:2013-06-05 22:40:01 【问题描述】:我使用 Parse.com 作为我的应用程序的后端,我想通过 Facebook 启用登录。问题是,我想为我的应用程序创建自己的 User 类,这样我就不必遵守某些 PFUser 特征(例如所需的密码/用户名,使用 Parse 进行电子邮件验证等)。
有没有办法不用PFUser就可以使用Parse的facebook登录?
【问题讨论】:
【参考方案1】:您不需要创建自定义用户类来处理 Facebook 登录。 Parse 可以纯粹通过 Facebook 进行认证(即没有用户名、电子邮件、密码)
来自他们的documentation:...
与 Parse 用户一起使用 Facebook 的主要方式有两种:(1) 以 Facebook 用户身份登录(或注册)并创建 PFUser,或 (2) 将 Facebook 链接到现有的 PFUser。
登录并注册
PFUser 提供了一种允许您的用户通过以下方式登录或注册的方法 Facebook。这是通过使用 logInWithFacebook 方法完成的,如下所示:
[PFFacebookUtils logInWithPermissions:permissions block:^(PFUser
*user, NSError *error)
if (!user)
NSLog(@"Uh oh. The user cancelled the Facebook login.");
else if (user.isNew)
NSLog(@"User signed up and logged in through Facebook!");
else
NSLog(@"User logged in through Facebook!");
];
Parse 与 Facebook ios SDK 3.2 版兼容。
运行此代码时,会发生以下情况:
向用户显示 Facebook 登录对话框。 用户通过 Facebook 进行身份验证,您的应用使用 handleOpenUrl 接收回调。 我们的 SDK 接收 Facebook 数据并将其保存到 PFUser。如果它是基于 Facebook ID 的新用户,则创建该用户。 用户调用您的代码块。
【讨论】:
如何在不使用 PFFacebookUtils 的情况下自己使用 Facebook 数据创建 PFUser ?因为,我还使用您没有提供任何 API 的 Google+ 登录。所以我需要它以一种方式。还请解释如何使用我的自定义 facebook 集成在每次启动时进行身份验证。 PFUser 用于该用户的私有数据 - Parse 需要某种方式进行身份验证。如果您不需要私人数据,您可以“登录”其他 API(谷歌等),然后拥有匿名用户(查看 PFAnonymousUtils)【参考方案2】:使用 Parse 的 Facebook 集成的主要用例是它内置链接到 PFUser 对象。对于您的用例,您可以直接使用 Facebook SDK。
【讨论】:
以上是关于facebook 登录是不是要求我在我的应用程序中使用 PFUser(使用 parse.com)?的主要内容,如果未能解决你的问题,请参考以下文章
如何在我的应用程序中使用 Facebook 登录并在成功登录后移至下一页/视图控制器?