如何修复discord.js中出现的'CLIENT_MISSING_INTENTS'错误?
CLIENT_MISSING_INTENTS 报错修复方案
报错原因
discord.js v13及以上版本新增了强制的网关意图要求,开发者必须显式声明Bot需要使用的权限范围,才可以正常连接网关,这就是你升级版本后才触发报错的原因。
修复步骤
- 实例化
Discord.Client时传入intents配置项,根据Bot实际功能选择对应的意图即可。如果仅需要基础的上线通知功能,仅配置Guilds(服务器访问)意图即可,修复后的完整代码如下:
const Discord = require('discord.js'); // 引入意图枚举类,discord.js v13请替换为 Intents const { Client, IntentsBitField } = Discord; const client = new Client({ intents: [ IntentsBitField.Flags.Guilds, // 后续需要其他功能可在此追加对应意图 // 例:需要接收服务器消息可添加 IntentsBitField.Flags.GuildMessages、IntentsBitField.Flags.MessageContent ] }); client.once('ready', () => { console.log('Meep is online!'); }); client.login('my token was here');
- 如果你用到了
MessageContent这类特权意图,需要额外进入Discord开发者后台的对应Bot设置页,在「Privileged Gateway Intents」板块开启对应权限开关,否则相关功能无法正常生效。
内容的提问来源于stack exchange,提问作者Esrarengiz Kahraman
相关产品推荐
相关产品推荐

