2016-02-12 125 views
0

我想從Node.js的LinkedIn API獲取一些數據。 我按照這個教程https://www.npmjs.com/package/node-linkedin,我寫了這個程序,它是爲了在回調中向控制檯發送數據。LinkedIn通過node.js獲取人員編號

var Linkedin = require('node-linkedin')('XXX', 'XXX', 'http://localhost:3000/oauth/linkedin/callback'); 
var express = require('express'); 

var app = express() 
    // Initialize 
var scope = ['r_basicprofile', 'r_emailaddress']; 


var linkedinVariables = { 
    'accessToken': null, 
    'client': null 
} 

app.get('/oauth/linkedin', function(req, res) { 
    // This will ask for permisssions etc and redirect to callback url. 
    Linkedin.auth.authorize(res, scope); 
}); 

app.get('/oauth/linkedin/callback', function(req, res) { 
    Linkedin.auth.getAccessToken(res, req.query.code, req.query.state, function(err, results) { 
     if (err) 
      return console.error(err); 

     console.log(results); 

     linkedinVariables.accessToken = results.access_token; 

     console.log("ACCESS TOKEN IS ", linkedinVariables.accessToken); 

     linkedinVariables.client = Linkedin.init(linkedinVariables.accessToken); 

    /* linkedinVariables.client.people.me(function(err, $in) { 
      console.log($in); 
     });*/ 

/*linkedinVariables.client.people.me('linkedin_id', ['id', 'first-name', 'last-name'], function(err, $in) { 
    // Loads the profile by id. 
    console.log($in); 
});*/ 
     linkedinVariables.client.people.id('HM3nX8nJD6', function(err, $in) { 
      console.log($in) 
     }); 
     // return res.redirect('/'); 
    }); 
}); 

app.listen(3000); 

現在這個程序工作正常,我這一行獲得數據:

linkedinVariables.client.people.me('linkedin_id', ['id', 'first-name', 'last-name'], function(err, $in) { 
     // Loads the profile by id. 
     console.log($in); 
    }); 

這讓我在我的控制檯中的JSON響應,但我suposed獲取有關其它信息的教程以下公司和身份證的人,但即使當我將自己的ID用於獲取自己的信息時,回覆也是空白。 我的代碼有問題嗎?或者LinkedIn拒絕所有請求?

回答

0

使用本

var scope = ['r_basicprofile', 'r_fullprofile', 'r_emailaddress', 'r_network', 'r_contactinfo', 'rw_nus', 'rw_groups', 'w_messages']; 

insted的的

var scope = ['r_basicprofile', 'r_emailaddress'];