我正在使用 ParseUI 框架的 PFLogInViewController。我有两个关于框架内 Facebook 登录电子邮件的问题:
1) 通过 Facebook 注册时,我看到新用户的电子邮件字段是“未定义的”。如何获取用户的电子邮件地址?
2) 如果我能够获取电子邮件地址,parse 的“emailVerified”应用程序设置是否仍会在 Facebook 注册时向用户发送验证电子邮件?如果没有,怎么办?
谢谢。
最佳答案
为了读取用户的电子邮件地址,您需要将电子邮件添加到您请求的 Facebook 权限数组中。看看关于这个的解析教程https://www.parse.com/tutorials/login-and-signup-views#properties
就您而言,您需要添加 @"email"
,如下所示:
[logInViewController setFacebookPermissions:[NSArray arrayWithObjects:@"friends_about_me", @"email", nil]];
然后,当您向 Facebook 请求用户信息时,您将能够访问用户的电子邮件地址:
FBRequest *request = [FBRequest requestForMe];
[request startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (!error) {
// Now you can access user's email
NSString *email = result[@"email"];
if (email) {
// Save it to your email field in Parse
}
}
}];
关于您问题的第 2 部分,我不太熟悉 Parse 支持的电子邮件验证功能,但看看这个(诚然是旧的)响应 https://www.parse.com/questions/email-verification-emails-going-out-to-facebook-users即使用户使用 Facebook 登录,Parse 也会验证电子邮件地址。
关于ios - 将 ParseC 用于 Facebook 登录/注册时丢失电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28912544/