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

开发Discord Node机器人时运行node .报错Error [TOKEN_MISSING]

解决Discord.js机器人的TOKEN_MISSING错误

这个错误的核心原因是你的机器人分片管理器(ShardingManager)无法获取到Discord机器人令牌(Token),导致初始化失败。以下是具体解决步骤:

  • 确认令牌来源正确
    从Discord开发者门户复制的机器人令牌必须完整,没有多余空格或字符,格式为MTAx...开头的长字符串。

  • 检查ShardingManager初始化代码
    错误栈显示问题出在ShardingManager.spawn()调用时,必须确保初始化ShardingManager时传入token参数:

    const { ShardingManager } = require('discord.js');
    // 直接传入令牌(不推荐硬编码)
    const manager = new ShardingManager('./bot.js', {
      token: '你的机器人令牌'
    });
    // 或者从配置文件读取(推荐)
    const config = require('./config.json');
    const manager = new ShardingManager('./bot.js', {
      token: config.token
    });
    
    manager.spawn();
    
  • 使用配置文件存储令牌
    创建config.json文件存储令牌,避免硬编码:

    {
      "token": "你的机器人令牌"
    }
    

    然后在主文件中正确导入该配置。

  • 环境变量存储令牌(最佳实践)
    通过环境变量传递令牌,更安全且适合部署:
    Windows命令行设置:

    set DISCORD_TOKEN=你的机器人令牌
    

    Linux/macOS终端设置:

    export DISCORD_TOKEN=你的机器人令牌
    

    代码中读取环境变量:

    const token = process.env.DISCORD_TOKEN;
    const manager = new ShardingManager('./bot.js', { token });
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 05:06:42