使用Javascript获取Facebook用户个人资料数据

时间:2011-05-01 05:51:37

标签: javascript facebook

我需要使用Javascript获取facebook用户uid,性别,照片和其他个人资料数据。

我记得有一种获取.id,.gender,.photo的用户对象的方法,但是我没有得到API调用的副本,我在文档中找不到解释。

如何使用Javascript获取用户UID和性别?

由于

3 个答案:

答案 0 :(得分:21)

2011年对此问题的接受答案中使用的函数FB.getSession()现已(2012年)弃用并从Facebook JS SDK中删除。

您仍然可以使用getLoginStatus()方法发现用户的Facebook ID,如下所示:

FB.getLoginStatus(function(response) {
  if (response.status === 'connected') {
    alert ("Your UID is " + response.authResponse.userID);
  }
});

注意:您仍然必须初始化Facebook API并在您的HTML中放置fb-root元素,例如Aleadam在接受的答案中解释。

答案 1 :(得分:20)

更新:我在答案中添加了更多细节:

首先,您需要调用FB.init并添加您的应用ID:

FB.init(
{
    appId  : APP_ID,
    status : true, // check login status
    cookie : true, // enable cookies to allow the server to access the session
    xfbml  : true  // parse XFBML
});

接下来,检查是否有会话打开(即用户已登录)

if(FB.getSession() != null) {

通过以下方式查询详细信息:

    FB.api('/me', function(response) 
    {
        alert ("Welcome " + response.name + ": Your UID is " + response.id); 
    });
}

您还需要将<div id="fb-root"></div>添加到您网页的<body>,然后加载<script src="http://connect.facebook.net/en_US/all.js"></script>

用户个人资料图片可以http:/graph.facebook.com/USERID/picture/

的形式访问

点击此处查看图表API参考:http://developers.facebook.com/docs/reference/api/user/

以及此处的FB SDK参考:http://developers.facebook.com/docs/reference/javascript/

答案 2 :(得分:0)

在您应用的authorization parameter中,确保验证令牌参数配置为 URI片段

使用的登录过程在文档中进行了解释:Getting started with Facebook login

按照三个步骤,已经编写了源代码。