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

Discord.js更新后Intents导入方法及运行异常问题求助

Discord.js 新版本Intents配置分步操作指南

第一步:核对Discord开发者后台权限配置

你可以先再次确认后台权限开启正确,避免操作位置错误:

  • 进入Discord Developer Portal对应Bot应用,切换到「Bot」标签页
  • 下滑到Privileged Gateway Intents区域,确认三个特权开关全部开启:
    • Presence Intent
    • Server Members Intent
    • Message Content Intent

注:如果你的Bot接入服务器数量超过100,需要先通过Discord官方验证并单独申请对应权限,才能开启以上开关

第二步:代码中Intents导入与配置

这是最容易遗漏的配置步骤,按你使用的Discord.js版本对应操作即可:

v14及以上版本配置方法

首先导入依赖:
const { Client, IntentsBitField } = require('discord.js');
实例化客户端时传入需要的intents参数,根据你的Bot功能选择对应标识即可,示例如下:

const client = new Client({
  intents: [
    IntentsBitField.Flags.Guilds, // 基础服务器权限,必开
    IntentsBitField.Flags.GuildMembers, // 服务器成员相关事件权限
    IntentsBitField.Flags.GuildMessages, // 服务器消息事件权限
    IntentsBitField.Flags.MessageContent, // 读取消息内容权限,处理指令必开
    IntentsBitField.Flags.GuildMessageReactions // 消息表情反应事件权限
  ]
});

v13版本配置方法

v13版本使用Intents对象而非IntentsBitField,导入与配置写法如下:

const { Client, Intents } = require('discord.js');
const client = new Client({
  intents: [
    Intents.FLAGS.GUILDS,
    Intents.FLAGS.GUILD_MEMBERS,
    Intents.FLAGS.GUILD_MESSAGES,
    Intents.FLAGS.MESSAGE_CONTENT
  ]
});

常见报错排查

  • 启动提示Disallowed intents specified:核对代码中启用的所有Intent,确认特权类Intent均已在开发者后台开启
  • 消息/成员相关事件不触发:确认你开启了对应事件需要的Intent,例如messageCreate事件需要同时开启GuildMessages和MessageContent两个权限
  • 无需开启所有Intent:仅开启你功能需要的Intent即可,多余的权限会增加Bot资源消耗,也会提高官方审核的权限要求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 01:42:04