You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord Bot无法上线,调用client.login()报AbortController未定义错误

Discord Bot触发AbortController未定义报错无法上线问题解决

相关代码

require("dotenv").config();
const { Client, Intents } = require("discord.js");

const client = new Client({
  intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES],
});

client.on("ready", () => {
  console.log("bot is ready");
});

client.login(process.env.DISCORD_BOT_TOKEN).catch((e) => {
  console.log(e);
});

报错信息

HTTPError [ReferenceError]: AbortController is not defined
    at RequestHandler.execute (g:\goofy-translator\node_modules\discord.js\src\rest\RequestHandler.js:172:15)
    at RequestHandler.execute (g:\goofy-translator\node_modules\discord.js\src\rest\RequestHandler.js:176:19)
    at RequestHandler.push (g:\goofy-translator\node_modules\discord.js\src\rest\RequestHandler.js:50:25)
    at async WebSocketManager.connect (g:\goofy-translator\node_modules\discord.js\src\client\websocket\WebSocketManager.js:128:9)
    at async Client.login (g:\goofy-translator\node_modules\discord.js\src\client\Client.js:245:7) {
  code: 500,
  method: 'get',
  path: '/gateway/bot',
  requestData: { json: undefined, files: [] }
}

排查过程

  • 报错由client.login()方法触发
  • 已三次核对机器人token,确认token正确
  • 排除环境变量读取问题,直接传入token依然无法运行

根因与解决方法

  • 根因:Node.js运行环境版本过低,discord.js库最低要求v16版本的Node.js运行环境,AbortController是高版本Node.js才内置的全局API,低版本环境不存在该变量因此触发引用错误。
  • 解决方法:将本地Node.js版本升级至v16或更高版本即可解决该问题。

内容的提问来源于stack exchange,提问作者Filipe Coutinho

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 01:06:03