【发布时间】:2021-11-09 02:43:58
【问题描述】:
我正在尝试制作一个发送嵌入的命令。但由于某种原因,它一直说DiscordAPIError: Invalid Form Body data.embeds[0].description: This field is required Error,即使描述不是空格。
我将它托管在 heroku 中,因此错误来自日志。
命令脚本:
module.exports = {
name: "test",
desc: "A test command",
cmd: async (interaction, utils) => {
await interaction.user.fetch()
.then(async ({ hexAccentColor }) => {
interaction.reply({ embeds: [
utils.embed(
"Hello!",
interaction.member.displayAvatarURL(),
`Your name is <@${interaction.member.id}> and you're now in the special list! (jk)`,
"",
hexAccentColor
)
] })
})
}
}
实用程序:
embed: async (title, thumbnail, desc, footer, color) => {
const { MessageEmbed } = require("discord.js")
await client.user.fetch()
.then(({ hexAccentColor }) => {
const embed = new MessageEmbed()
.setAuthor("GND Bot", client.user.avatarURL())
.setTitle(title)
.setColor(color || hexAccentColor)
.setDescription(desc)
.setThumbnail(thumbnail || client.user.avatarURL())
.setFooter(footer)
return embed
})
}
错误:
2021-11-08T10:20:12.649708+00:00 app[worker.1]: /app/node_modules/discord.js/src/rest/RequestHandler.js:349
2021-11-08T10:20:12.649731+00:00 app[worker.1]: throw new DiscordAPIError(data, res.status, request);
2021-11-08T10:20:12.649732+00:00 app[worker.1]: ^
2021-11-08T10:20:12.649732+00:00 app[worker.1]:
2021-11-08T10:20:12.649732+00:00 app[worker.1]: DiscordAPIError: Invalid Form Body
2021-11-08T10:20:12.649733+00:00 app[worker.1]: data.embeds[0].description: This field is required
2021-11-08T10:20:12.649733+00:00 app[worker.1]: at RequestHandler.execute (/app/node_modules/discord.js/src/rest/RequestHandler.js:349:13)
2021-11-08T10:20:12.649734+00:00 app[worker.1]: at processTicksAndRejections (node:internal/process/task_queues:96:5)
2021-11-08T10:20:12.649734+00:00 app[worker.1]: at async RequestHandler.push (/app/node_modules/discord.js/src/rest/RequestHandler.js:50:14)
2021-11-08T10:20:12.649735+00:00 app[worker.1]: at async CommandInteraction.reply (/app/node_modules/discord.js/src/structures/interfaces/InteractionResponses.js:98:5) {
2021-11-08T10:20:12.649735+00:00 app[worker.1]: method: 'post'
【问题讨论】:
-
此错误清楚地表明
.setDescription()中的文本是必需的,因此请尝试控制台记录您的desc变量并检查它是否为空 -
不是,它说的是字符串,当我执行 typeof 时,它会打印字符串
-
确保不是这个函数的使用,而是另一个导致错误的文件/lign,检查以确保并编辑您的答案以包含整个错误,它可以帮助我们
-
我已经确定并且我已经编辑了答案
标签: node.js discord.js