Github OAuth2访问令牌端点返回“未找到”。 [节点]

时间:2018-12-17 15:05:48

标签: node.js github oauth-2.0

当前尝试从github取回用户的访问令牌,但收到以下对象:

{"error": "Not Found"}

我无法确切地知道我在此提取请求中做错了什么,我相信我拥有所有正确的令牌等。我遵循的指南使用(我认为是)超级代理,而我只是使用常规的ol'同构提取,所以也许这就是一些困惑所在。

这是我的代码:

 fetch("https://github.com/login/oauth/access_token", {
    method: "POST",
    body: {
      client_id: process.env.CLIENT_ID,
      client_secret: process.env.CLIENT_SECRET,
      code: code,
      redirect_uri: "/"
    },
    headers: {
      Accept: "application/json"
    }
  })
    .then(res => res.json())
    .then(body => {
      console.log("body" + JSON.stringify(body));
      res.send({
        success: true,
        message: "Succesfully Logged In!",
        userToken: body.access_token
      });
    });

我仔细检查了env.client_id和env.client_secret,它们都已正确导入。我只能猜测的代码,但似乎从注销时就正确了。

1 个答案:

答案 0 :(得分:0)

出于我尚不知道的原因,我的

process.env.CLIENT_ID

以某种方式在其末尾用引号引起来,从而使其无效。其他变量不是这种情况,所以我有些困惑。但是,完全删除引号并让id独立存在是我的解决方案。

编辑:那只是问题的一部分。目前,由于某种原因,我仅在通过获取使用superagent方面取得了成功。