0

我试图在通过身份验证后使用授权代码访问令牌,它在我的控制台中使用 request-promise 模块为 nodejs 工作,但它在邮递员上不起作用它说

{
    "error": "invalid_grant",
    "error_description": "invalid authorization code"
}

但是它适用于nodeJS的控制台

{"access_token":"eyJhbGciOiJIUzI1NiJ9.7DkDzFz89Y-W-HLlwnqA0YmA_mMrR8nZV44eC1gAJjEp2Zmq8SE9q0UmzXuU-hHuXseMNvpqQeRMhHeVTbn8J_ZCQmkkAgZ359CnKvnXe3mZoYAWM4oQbtJFefoa7mwsAEFKScyEaIqi1DqHTItVqZfbCYdzrbee88E2-pWteiE.CHAvVIanJrUlTZZ25LMUTzW7IO4qRGZ_B_wN7c5Kfkk","token_type":"Bearer","refresh_token":"uDhPe4dRJkUYB1rC9VuV","expires_in":2592000,"scope":"openid profile","id_token":"eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL2FjY2Vzcy5saW5lLm1lIiwic3ViIjoiVWU4NTUzNTBiNDIzYzI5ZjExYjIwZTgwZTJiZmE4MmQ1IiwiYXVkIjoiMTU1Njc5NDgxOCIsImV4cCI6MTUxNzkzMDc3MCwiaWF0IjoxNTE3OTI3MTcwLCJuYW1lIjoiSm9obiBCb3JqZSIsInBpY3R1cmUiOiJodHRwczovL3Byb2ZpbGUubGluZS1zY2RuLm5ldC8waG1URGV0bUpWTW50NUhCem5YUnhOTEVWWlBCWU9NalF6QVhJcVNBNGVQaDVSSzNRcFRINHVGQXdiUEI5V0pYTW9RWGgxR1Y5UGIwMVQifQ.mYUWJQ-YLrz4zEer5n1J-R3S1W37mDLx6g_mVmmWDTk"}

这是使用 nodeJS 的代码

var data = {
    grant_type: "authorization_code",
    code: qC,
    redirect_uri: "https://sample.com/profile", //edited for security
    client_id: 1, // edited for security
    client_secret: "9" //edited for security
  }

  var options = {
    method: 'POST',
    url: 'https://api.line.me/oauth2/v2.1/token',
     headers:{
       'Content-Type': 'application/x-www-form-urlencoded'
    },
  //  payload: 'grant_type=authorization_code&code="'+queryCode+'"&redirect_uri=https://line-poc-demo.herokuapp.com/profile&client_id=1556794818&client_secret=98760fb0cea2aebdf7848ecf93c19cf4',
    form: data
  }
  //
  rp(options)
      .then(function (parsedBody) {
          // POST succeeded...
          console.log('bick dig' + parsedBody);
      })
      .catch(function (err) {
          // POST failed...
          console.log('err ' + err);
      });

我的代码有问题吗?谢谢,任何帮助将不胜感激。

4

0 回答 0