首次搭建的Discord机器人无消息响应问题求助
Discord机器人不响应消息的修复方案
核心问题:事件名称已废弃
discord.js v13及后续版本中,原message事件已被移除,替换为messageCreate事件。你的代码仍在监听message,导致机器人无法触发消息处理逻辑。
修复后的消息监听代码:
client.on("messageCreate", async (message) => { if (message.content === "ping") { message.reply("pong"); } });
其他排查项
- 确认特权网关意图开启:登录Discord开发者平台,进入机器人应用的Bot页面,找到Privileged Gateway Intents,确保
Presence Intent、Server Members Intent、Message Content Intent全部开启并保存。 - 检查Heroku环境变量:在Heroku的Settings-Config Vars中,确认
BOT_TOKEN的值与Discord开发者平台提供的机器人令牌完全一致。 - 查看Heroku日志:通过Heroku的Logs面板,检查是否有令牌错误、依赖缺失(如
Cannot find module 'discord.js')等报错,若有需重新部署确保依赖安装完成。 - 代码规范优化:将全局变量
client修改为const client = new Discord.Client({ intents: 32767 });,避免全局变量污染问题。
内容的提问来源于stack exchange,提问作者Zordas X
相关产品推荐
相关产品推荐

