簡體   English   中英

LinkedIn oauth錯誤缺少必需參數“client_id”

[英]LinkedIn oauth error A required parameter “client_id” is missing

所以我只是從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缺少必需參數“clien_id”

鏈接到LinkedIn指南: https//developer.linkedin.com/docs/oauth2 (在第3步發生錯誤)

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文檔說默認情況下正文被序列化為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
    }));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM