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

使用discord.js@12.5.3发MessageEmbed报DiscordAPIError空消息错误如何解决?

报错原因

你使用的discord.js@12.5.3版本对消息发送接口有明确的传参规范:msg.reply()方法的第一个参数默认识别为纯文本消息内容,嵌入消息不能直接作为第一个参数传入。
你当前直接将MessageEmbed实例传入msg.reply(),底层会先尝试将该实例转换为字符串作为文本内容发送,转换结果为空就触发了Cannot send an empty message报错;同时内部兼容逻辑又识别到了传入的Embed实例,将其成功发送到频道,因此出现了消息发送成功但仍抛出错误的矛盾现象。

修复方案

只需要调整msg.reply的传参格式,将MessageEmbed实例封装到配置对象的embed字段中即可,修改后的代码如下:

// 其余构造exampleEmbed的代码保持不变
msg.reply({ embed: exampleEmbed })

补充:如果需要同时发送文本内容和嵌入消息,可以按以下格式传参:

msg.reply({
  content: "这里是普通文本内容",
  embed: exampleEmbed
})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 02:15:08