在 Parse 中使用 FBgraphUser 从 Facebook 获取用户电子邮件
Posted
技术标签:
【中文标题】在 Parse 中使用 FBgraphUser 从 Facebook 获取用户电子邮件【英文标题】:get user email from Facebook Using FBgraphUser In Parse 【发布时间】:2014-08-14 08:25:15 【问题描述】:我正在尝试将用户电子邮件地址存储在 mt 解析数据库中,但我似乎无法找到完成此操作的正确方法 我的代码如下
FBRequest *request = [FBRequest requestForMe];
[request startWithCompletionHandler:^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *result, NSError *error)
if (error)
// Handle it
else
PFUser *me = [PFUser currentUser];
me[@"facebookId"] = result.objectID;
me[@"facebookName"] = result.name;
me[@"facebookProfile"] = result.link;
[me saveEventually];
];
提前致谢
【问题讨论】:
【参考方案1】:其实result是一个NSDictionary实例,符合FBGraphUser协议。这意味着它仍然可以被视为字典,例如您可以向它发送-objectForKey:
消息。实际上 FBGraphUser 协议只是为一些对象添加了一个“快捷方式”,存储在字典中。所以,通过调用:
NSString *mail = result[@"email"];
您将收到电子邮件。这是一个方便的等价物:
NSString *mail = [result objectForKey:@"email"];
对于用户查看Graph Api Reference的所有可能键。
【讨论】:
但我需要先收到电子邮件,而且似乎 FBGraphUser 没有收到电子邮件 对不起,我还是新手,我不明白你的意思你可以使用键值访问结果: 我现在添加这个,但我仍然从电子邮件地址得到 Null 如文档中所述,This field will not be returned if no valid email address is available.
我以为每个人在 facebook 上都有一个电子邮件地址?即使是 Facebook 电子邮件地址以上是关于在 Parse 中使用 FBgraphUser 从 Facebook 获取用户电子邮件的主要内容,如果未能解决你的问题,请参考以下文章
如何从原生 iOS Facebook SDK 获取用户兴趣?
如何使用 swift 从 Parse 上的用户指针中检索数据
如何使用 ObjectIds 数组从 Parse 中检索用户数组?