我正在使用facebook graph api V2.0来验证我的应用程序中正在开发中的用户 . 请求的权限如下:“public_profile”,“user_friends”,“email”应用程序需要用户的生日和电子邮件 . 当开发人员用户登录时,对facebook graph api的调用将返回所需的所有数据,但是当测试人员用户登录电子邮件时,不会返回生日和其他数据 . 用户(开发人员和测试人员)都提供了登录时请求的所有权限 . 有这种奇怪行为的人吗?谢谢
更新:请求权限:@“public_profile”,@“email”,@“user_birthday”,@“user_friends”
现在api正在返回生日但不是电子邮件 . 只需检查访问令牌并获得所需的所有权限 . 该应用程序正在调用:
[FBRequestConnection startForMeWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
---- code here ---
}];
1 回答
首先,对于这两个用户,请调用
/me/permissions
并确保列出您期望的所有权限 .其次,并非所有用户都有电子邮件地址 . 在某些情况下,用户可能已通过手机注册Facebook,因此未输入电子邮件,或未验证电子邮件地址 .
您应该进行防御性编码,偶尔期望这些字段可能为空 .