0

对于几个网站,我有一个与当前 JS 库的 facebook 集成。登录按预期工作。

我将 Facebook C# api 与 JS 库 (v6) 一起使用。当 Facebook 用户通过 JS 调用成功通过身份验证时,它将向 C# 方法发送 ajax 调用:

FacebookClient facebookClient = new FacebookClient(accessToken);

var fbResult = facebookClient.Get("me");
if (fbResult.GetType().ToString() != "Facebook.JsonObject")
     return null;

IDictionary<String, Object> result = (IDictionary<String, Object>)fbResult;

if (result.ContainsKey("email"))
    email = (String)result["email"];
            else
throw new Exception("E-mail key not found")

现在这工作正常,accessToken 被传递,c# 库使用它来获取用户的信息。

但是对于大约 100 个用户中的 1 个来说,抛出了异常!由于某种原因,电子邮件密钥未包含在“api”中。

在developers.facebook.com 上,我已在“Auth Dialog”中将我的应用程序设置为“Authenticated Referrals”:电子邮件和user_birthday。

但这怎么可能?我忽略了什么吗?用户如何在没有正确权限的情况下登录我的应用程序?

4

0 回答 0