ben*_*ris 7 javascript linkedin node.js
我正在尝试使用LinkedIn的API访问大学的LinkedIn页面,以定期收集他们有多少粉丝.这似乎可行,但我似乎无法生成一个访问令牌,而没有一些奇怪的重定向URL,必须带你到GUI登录页面!
我正在使用node.js,特别是这个包:https://www.npmjs.org/package/node-linkedin
我有一个API密钥和秘密,所以我需要的是一个访问令牌然后我将被设置为实际开始使用他们的API路由.
var Linkedin = require('node-linkedin')('KEY', 'SECRET', 'callback');
var linkedin = Linkedin.init('my_access_token'); // need a token to initialise!
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
编辑:到目前为止,这是我的代码:
var Linkedin = require('node-linkedin')('KEY', 'SECRET', './oauth/linkedin/callback');
app.get('/oauth/linkedin', function(req, res) {
// This will ask for permisssions etc and redirect to callback url.
Linkedin.auth.authorize(res, ['r_basicprofile', 'r_fullprofile', 'r_emailaddress', 'r_network', 'r_contactinfo', 'rw_nus', 'rw_groups', 'w_messages']);
});
app.get('/oauth/linkedin/callback', function(req, res) {
Linkedin.auth.getAccessToken(res, req.query.code, function(err, results) {
if ( err )
return console.error(err);
/**
* Results have something like:
* {"expires_in":5184000,"access_token":". . . ."}
*/
console.log(results);
var linkedin = Linkedin.init(result);
return res.redirect('/');
});
});
Run Code Online (Sandbox Code Playgroud)
小智 3
您想要做的是仅应用程序的身份验证,与 facebook 和 twitter 不同,linkedIn 似乎删除了此选项。从现在开始,只能以用户身份进行身份验证。如果您确实想跳过重定向,您可以使用 PhantomJS 之类的无标头浏览器。但我强烈建议您不要这样做,因为 LinkedIn 要求用户在其许可协议中进行身份验证。我不知道这是否合法,但您可以为自己提供一个端点,用于生成authentication_code和access_token,然后将其保存到数据库(默认情况下有效60天)。
| 归档时间: |
|
| 查看次数: |
4212 次 |
| 最近记录: |