如何使用访问令牌获取Facebook用户的电子邮件地址和一些基本信息

时间:2014-01-10 01:53:49

标签: javascript jquery facebook facebook-graph-api

我有以下代码,想要获取Facebook用户的电子邮件地址和其他详细信息。这是我所做的代码。

FB.login(function(response) {
      if (response.authResponse) {
         //updateUserInfo(fb_id);
        console.log(response.authResponse);
        updateUserInfo(response.authResponse.userID);
        $.ajax({
           dataType: "json",
           url: 'http://graph.facebook.com/'+response.authResponse.userID+'/ fields=id,name,birthday,email,gender,hometown,location',
           success: function(data){
                fb_data = data;
               console.log(data);
            }});
 },{scope:'email'});

我无法获得以下详细信息:

  1. 生日
  2. 电子邮件
  3. 位置
  4. 家乡
  5. 但是,我能够获得名字和身份证。

    如果我应该使用访问令牌,我该怎么把它放在查询中?电子邮件地址是重要信息,因为我的系统通过电子邮件地址识别用户。

2 个答案:

答案 0 :(得分:2)

您需要获得用户的以下许可才能从Facebook获取数据。

    生日
  1. user_birthday
  2. 电子邮件发送电子邮件
  3. 位置
  4. user_location
  5. user_hometown for hometown
  6. 您可以check thisthis获取其他权限和用途。

    然后,一旦用户点击“登录”按钮并授权您的应用程序,您将获得访问令牌。

答案 1 :(得分:1)

您不必在FB.login之后使用ajax调用,您可以使用FB.api doc,这将确保您在登录时获得的访问令牌(需要电子邮件访问)将用于访问数据