Javascript 不一致的oauth API错误express.js

Javascript 不一致的oauth API错误express.js,javascript,node.js,api,express,discord,Javascript,Node.js,Api,Express,Discord,我已经创建了多个网站使用本教程,他们都工作完美,直到昨天。问题是,当用户进行身份验证并转到{discord response code}时,api在尝试使用access_令牌转换代码时出错。 这是我的discord api回调的代码: const router = express.Router(); const fetch = require('node-fetch'); const FormData = require('form-data'); const btoa = require

我已经创建了多个网站使用本教程,他们都工作完美,直到昨天。问题是,当用户进行身份验证并转到{discord response code}时,api在尝试使用access_令牌转换代码时出错。 这是我的discord api回调的代码:


const router = express.Router();

const fetch = require('node-fetch');
const FormData = require('form-data');

const btoa = require('btoa');
const { catchAsync } = require(__dirname+'/utils');

const CLIENT_ID = process.env.CLIENT_ID;
const CLIENT_SECRET = process.env.CLIENT_SECRET;
const redirect = encodeURIComponent('https://mywebsite.com/api/discord/callback');

router.get('/login', (req, res) => {
  res.redirect(`https://discordapp.com/api/oauth2/authorize?client_id=${CLIENT_ID}&scope=identify&response_type=code&redirect_uri=${redirect}`);
});

router.get('/callback', catchAsync(async (req, res) => {
  if (!req.query.code) throw new Error('NoCodeProvided');
  const code = req.query.code;
  const creds = btoa(`${CLIENT_ID}:${CLIENT_SECRET}`);
  const response = await fetch(`https://discord.com/api/oauth2/token?grant_type=authorization_code&code=${code}&redirect_uri=${redirect}`,
    {
      method: 'POST',
      headers: {
        Authorization: `Basic ${creds}`,
      },
    });
  const json = await response.json();
  console.log(json)
  res.redirect(`/finallogin/?token=${json.access_token}`);
}));

module.exports = router;
当用户进行身份验证时,他会被重定向到,我在控制台上看到以下错误:

  error: 'invalid_request',
  error_description: 'Missing "code" in request.'
}
这是完美的工作之前,只是随机打破了几天前在我所有的网站。任何帮助/解决方案/想法都将不胜感激

(注意:“”只是一个示例,而不是我的实际网站url)

谢谢, realpower2map