【问题标题】:LinkedIn oauth error A required parameter "client_id" is missingLinkedIn oauth 错误缺少必需的参数“client_id”
【发布时间】:2018-11-15 21:42:26
【问题描述】:

所以我刚刚从 LinkedIn oauth 1.0 升级到 2.0,我已经收到这个错误大约一天了。我看到了一篇关于 php 的帖子,但我无法在 Node JS (Javascript) 中找到它,这是我当前的代码:

axios
    .post("https://www.linkedin.com/oauth/v2/accessToken", {
      grant_type: "authorization_code",
      code: req.query.code,
      redirect_uri: keys.linkedinCallbackURL,
      client_id: keys.linkedinConsumerKey,
      client_secret: keys.linkedinConsumerSecret
    })
    .then(res2 => {
      console.log(res2);
    })
    .catch(error => {
      console.log(error);
    });

如果您有任何想法,请告诉我:)

php解决方案链接:LinkedIn OAuth a required parameter "clien_id" is missing

LinkedIn 指南链接:https://developer.linkedin.com/docs/oauth2 (第 3 步出现错误)

【问题讨论】:

  • 您为 clien_id 提交什么值(即什么是 'keys.linkedinConsumerKey')?
  • keys.linkedinConsumerKey 是linkedin给的app id。 LinkedinConsumerKey 是一个糟糕的变量名。
  • 您的错误似乎是在告诉您 clien_id 没有通过。试着捕捉你传递的值是什么?
  • 在 consloe.log(error);我可以看到使用正确的变量传入的请求和 client_id 是什么。

标签: javascript node.js axios linkedin


【解决方案1】:

LinkedIn 文档要求您以application/x-www-form-urlencoded 的形式发送数据,他们向我们展示了这个示例:

POST /oauth/v2/accessToken HTTP/1.1
Host: www.linkedin.com
Content-Type: application/x-www-form-urlencoded

grant_type=authorization_code&code=987654321&redirect_uri=https%3A%2F%2Fwww.myapp.com%2Fauth%2Flinkedin&client_id=123456789&client_secret=shhdonottell

Axios documentation 表示默认情况下正文被序列化为 JSON:

默认情况下,axios 将 JavaScript 对象序列化为 JSON。

为了正确序列化正文,您应该使用querystring 模块,如下所示:

const querystring = require('querystring');

axios
    .post("https://www.linkedin.com/oauth/v2/accessToken", querystring.stringify({
      grant_type: "authorization_code",
      code: req.query.code,
      redirect_uri: keys.linkedinCallbackURL,
      client_id: keys.linkedinConsumerKey,
      client_secret: keys.linkedinConsumerSecret
    }));

【讨论】:

  • 这修复了它!谢谢:)
猜你喜欢
  • 2017-01-15
  • 2021-11-05
  • 2017-12-09
  • 1970-01-01
  • 2014-05-31
  • 2022-01-01
  • 1970-01-01
  • 2014-06-28
  • 2015-12-31
相关资源
最近更新 更多