javascript - 如何在没有重定向的情况下获取 LinkedIn API 访问 token

标签 javascript node.js linkedin

我正在尝试使用 LinkedIn 的 API 访问 Universities LinkedIn 页面,以定期收集他们拥有的关注者数量。这似乎是可行的,但我似乎无法在没有一些必须将您带到 GUI 登录页面的奇怪重定向 URL 的情况下生成访问 token !

我为此使用了 node.js,特别是这个包:https://www.npmjs.org/package/node-linkedin

我有一个 API key 和 secret ,所以我只需要一个访问 token ,然后我将被设置为实际开始使用他们的 API 路由。

var Linkedin  = require('node-linkedin')('KEY', 'SECRET', 'callback');
var linkedin = Linkedin.init('my_access_token'); // need a token to initialise!

有什么想法吗?

编辑:到目前为止,这是我的代码:

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('/');
  });
});

最佳答案

您尝试做的是仅应用程序身份验证,与 facebook 和 twitter 不同,linkedIn 似乎已删除此选项。从现在开始,只能以用户身份进行身份验证。 如果你真的想跳过重定向,你可以使用像 PhantomJS 这样的 headless 浏览器。但我强烈建议您不要这样做,因为 LinkedIn 要求用户在其许可协议(protocol)中进行身份验证。我不知道这是否合法,但您可以为自己提供一个端点,用于生成 authentication_code 和 access_token,然后将其保存到数据库(默认情况下 60 天有效)。

关于javascript - 如何在没有重定向的情况下获取 LinkedIn API 访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26993067/

相关文章:

ios - 找不到体系结构 armv7 的符号

html - LinkedIn 共享按钮从 URL 中删除了 QueryString

python - 使用 python 请求 session 登录 LinkedIn

javascript - AngularJS 嵌套范围/ View

Javascript - 数组弹出并获取数组的第一部分

javascript - 为什么通过键在对象中搜索值比在 js 中使用 'for in' 慢?

node.js - Node : Calling API Routes from other part (web/admin) of code

javascript - 将插值表达式传递到 Angular 指令中

javascript - 如何定位固定元素

javascript - Electron 安装程序完整性检查失败