2013-04-03 155 views
-2

我做我的博士工作致力于社交网络分析。 当工具被选中Node JS和Facebook API 现在我可以做的是检索用户的ID与额外的信息,但要建立图我需要用户的朋友列表。 我有Heroku应用程序,但我完全失望怎么用te APP_ID来获取构建数据所需的信息。 我应该从哪里开始?检索特定用户ID的信息

回答

0

有一些Node.js包可用于此目的。

Third party SDKs for Facebook

This是非常有用的,如果你想要写你的服务器(的NodeJS)之间的相同的代码和共享与客户端(FB JS-SDK

为了开始,你需要有来自用户的access_tokens,你想要的信息。 (通过FB APP)

FB.login(function(response) { 
    if (response.authResponse) { 
     var res = response.authResponse; 
     FB.api('/me', function(response) { 
      registerUser({ "fb_user_id": res.userID,  //register user in your database 
         "access_token": res.accessToken 
         }, function() { 
       //handle here after registration 
      }); 
     }); 
    } else { 
     //handle reject in requested fields 
    } 
}, { scope: 'email,friends_about_me'}); 
//you can set scope field according to your use. 

参见this为可在范围字段中使用扩展的配置文件属性。

一旦你获得了access_tokens,你可以在上面的第三方SDK中使用它们。

例如与facebook-node-sdk

该SDK还提供您请求API的access_token

var FB = require('fb'); 
var accessToken = FB.getAccessToken(); 
FB.setAccessToken(accessToken); 

FB.api('idHere', { fields: ['id', 'name'] }, function (res) {  //you can access fields, access_token has access to 
    if(!res || res.error) { 
    console.log(!res ? 'error occurred' : res.error); 
    return; 
    } 
    console.log(res.id); 
    console.log(res.name); 
}); 

您还可以用直接的access_token使用api function

FB.api('me', { fields: ['id', 'name'], access_token: 'access_token' }, function (res) { 
    console.log(res); 
} 
+0

谢谢!这个例子让我们获得了我已经拥有的公共信息。但获得我必须拥有access_token的朋友列表。如何获得这个令牌? – user2241943 2013-04-04 06:51:54