Node.js – 从facebookgraphicsAPI获取我的帐户详细信息

我试图通过facebook图表api( graph.facebook.com/me?access_token=token )在node.js中获取我的Facebook帐户详细信息,但是我无法使用它:

access_token = appid + '|' + appsecret

这是我的代码:

 var https=require('https'); var access_token = process.argv.slice(2)[0] + '|' + process.argv.slice(2)[1]; var options = { host: 'graph.facebook.com', path: '/me?access_token=' + access_token }; https.get(options,function(res){ var data = ''; res.on('data', function (chunk) { data += chunk; }); res.on('end', function() { console.log(data); }); }); 

而我得到的错误:

{“error”:{“message”:“一个活跃的访问令牌必须用来查询关于当前用户的信息”,“type”:“OAuthException”,“code”:2500}}

编辑:

再次阅读文档: https : //developers.facebook.com/docs/facebook-login/access-tokens 。

我知道Facebook有4种令牌:

  • 用户访问令牌
  • 应用访问令牌= app_id | app_secret
  • 页面访问令牌
  • 客户端令牌

应用程序访问令牌用于读取应用程序设置(不是用户信息)。

和“ https://graph.facebook.com/me ”是用户信息,所以我们需要使用用户访问令牌


使用应用程序访问令牌的示例:

https://graph.facebook.com/APP_ID/roles?&access_token=APP_ID|APP_SECRET

我错过了url中的&grant_type=client_credentials
获取应用程序的访问令牌Facebook的API 。

但是应用程序令牌并不是获取用户信息的应用程序令牌,在这种情况下,我需要user access token ,我可以从Graph Api Explorer