用户通过身份验证后如何获取instagram ID(instagram节点)

时间:2015-06-29 17:09:01

标签: javascript node.js express instagram instagram-api

我试图在用户在我的网站上进行身份验证后获取用户的Instagram ID。我没有问题进行身份验证,因为当我使用自己的帐户登录时可以获得access_token,我可以使用以下代码假设我知道用户的instaid

exports.renderUser = function(req, res){
 console.log("STARTING RENDERING");

 var userID = "280430135";

 api.user(userID, function(err, result, remaining, limit){
  if(err){
   console.log("current user " + err);
  }

  app.set('imgSource', result.profile_picture);
  app.use('/', routes);
  res.redirect('/');
 });
};

我是否应该从此身份验证代码中获取用户的instaid?

exports.handleauth = function(req, res) {
  api.authorize_user(req.query.code, redirect_uri, function(err, result) {
    if (err) {
     console.log(err.body);
     res.send("Didn't work");
    } else {
     console.log('Yay! Access token is ' + result.access_token);
     res.redirect('/');
    }
  });
};

非常感谢任何帮助。我正在使用instagram节点,因为我正在为我的应用程序使用express。

谢谢!

1 个答案:

答案 0 :(得分:2)

事实证明,朋友能够比我预期的更快地回答我的问题。

exports.handleauth

以这种格式返回带有用户信息的json响应:

{
 "access_token": "fb2e77d.47a0479900504cb3ab4a1f626d174d2d",
  "user": {
    "id": "1574083",
    "username": "snoopdogg",
    "full_name": "Snoop Dogg",
    "profile_picture": "..."
  }
}

来源:https://instagram.com/developer/authentication/

因此,可以通过调用

来访问instaid和其他用户信息
result.user.id
result.user.full_name

等...