Facebook C# SDK 不返回所有信息

Facebook C# SDK not returning all information

我的权限范围是这样定义的:

var loginUrl = fb.GetLoginUrl(new
        {
            client_id = ConfigurationManager.AppSettings["facebookAppID"].ToString(),
            client_secret = ConfigurationManager.AppSettings["facebookAppSecret"].ToString(),
            redirect_uri = RedirectUri.AbsoluteUri,
            response_type = "code",
            scope = "public_profile, email, user_friends, user_about_me, user_birthday, user_education_history, user_work_history, user_location" // Add other permissions as needed
        });

然后我通过这种方式获得我的访问令牌:

var fb = new FacebookClient();
        fb.AppId = ConfigurationManager.AppSettings["facebookAppID"].ToString();
        fb.AppSecret = ConfigurationManager.AppSettings["facebookAppSecret"].ToString();

        dynamic result = fb.Post("oauth/access_token", new
        {
            client_id = ConfigurationManager.AppSettings["facebookAppID"].ToString(),
            client_secret = ConfigurationManager.AppSettings["facebookAppSecret"].ToString(),
            redirect_uri = RedirectUri.AbsoluteUri,
            code = code
        });

然后我以这种方式将我的访问令牌分配给 Facebook 客户端:

fb.AccessToken = accessToken; 

我有一个自定义 class 从 Facebook SDK 检索数据:

dynamic userDetails = fb.Get("me", new { fields = "name, email, gender, birthday, education, work" });
dynamic userEducation = fb.Get("me?fields=education");
//2. Store details to be used
var facebookUserDetails = new UserFacebookDetails();
facebookUserDetails.Name = userDetails.name;
facebookUserDetails.Email = userDetails.email;
facebookUserDetails.Gender = userDetails.gender;
facebookUserDetails.SetBirthDayVals(userDetails.birthday);

我只获取姓名、电子邮件和性别的数据。我没有收到有关生日、教育或工作的信息。我在 Facebook API Explorer 上检查了相同的端点,并获得了信息。怎么了?谁能帮帮我?

我想我已经找到了解决这个问题的方法。问题的根源在于 Facebook。我没有提交我的应用程序以供审查,通常,这 3 个范围在使用前需要提交的范围内。

请查看您的FB app => APP Review => Approved Items。 初始支持电子邮件、public_profile、user_friends。 所有其他登录所需的范围都不会return! 当您以应用程序的所有者身份登录时,您可能会检索到正确的权限,而在制作您的应用程序 public 后,以其他帐户登录时,您可能会检索到意外的权限。 如果你想要更多权限...你必须提交给FB。 这个问题也困扰了我 1 周 :))

App Review ScreenShot