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

Discord.js V14 TypeError [ClientMissingIntents]问题求助

解决discord.js TypeError [ClientMissingIntents]错误的排查方案

1. 匹配discord.js版本的Intent写法

discord.js v13和v14的Intent调用方式完全不同,需对应你的版本调整:

  • v14版本:使用GatewayIntentBits枚举
    const { Client, GatewayIntentBits } = require('discord.js');
    const client = new Client({
      intents: [
        GatewayIntentBits.Guilds, // 基础服务器权限
        GatewayIntentBits.GuildMessages, // 服务器消息权限
        GatewayIntentBits.MessageContent // 读取消息内容权限(需开发者门户开启)
      ]
    });
    
  • v13版本:使用Intents.FLAGS
    const { Client, Intents } = require('discord.js');
    const client = new Client({
      intents: [
        Intents.FLAGS.GUILDS,
        Intents.FLAGS.GUILD_MESSAGES,
        Intents.FLAGS.MESSAGE_CONTENT
      ]
    });
    

先查看你的package.json中discord.js的版本号,确保写法与版本匹配。

2. 开启Discord开发者门户的权限

即使代码中声明了Intent,若未在Discord开发者平台开启对应权限也会报错:

  • 登录Discord开发者门户,进入你的机器人应用
  • 切换到「Bot」页面,找到「Privileged Gateway Intents」区域
  • 开启Message Content Intent(如果你的机器人需要读取消息内容),若用到成员或状态相关功能,同时开启Server Members Intent和Presence Intent
  • 保存设置后重启机器人

3. 检查代码中的Intent拼写与完整性

  • 确认Intent枚举值拼写正确,比如GUILD_MESSAGES不要写成GUILD_MESSAGE,注意大小写
  • 确保intents数组中没有无效值或多余语法(比如末尾多余的逗号)
  • 若你的机器人需要音乐功能,需额外添加GatewayIntentBits.GuildVoiceStates(v14)或Intents.FLAGS.GUILD_VOICE_STATES(v13)

4. 重新同步依赖

若你已更新Node.js和discord.js但问题依旧,尝试:

  • 删除项目根目录下的node_modules文件夹和package-lock.json文件
  • 执行npm install重新安装依赖
  • 启动机器人测试

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 22:25:20