【发布时间】:2020-12-30 21:40:49
【问题描述】:
if (command === 'whois') {
let user;
if (message.mentions.users.first()) {
user = message.mentions.users.first();
} else {
user = message.author;
}
const member = message.guild.member(user);
const embed = new Discord.MessageEmbed()
.setColor("RANDOM")
.setThumbnail(`${member.user.displayAvatarURL({ dynamic: true })}`)
.addField(`${user.tag}`, `${user}`, true)
.addField("ID:", `${user.id}`, true)
.addField("Nickname:", `${member.nickname !== null ? `${member.nickname}` : 'None'}`, true)
.addField("Status:", user.presence.status, true)
.addField("Playing", `${member.user.presence.activities} `)
.addField("Joined Discord At", member.user.createdAt)
.addField("Roles", member.roles.cache.map(r => '`'+r.name+'`').join(' - '), true)
.setFooter(`${client.user.username}`)
message.channel.send(embed);
}
我不断收到错误 (node:19788) UnhandledPromiseRejectionWarning: DiscordAPIError: Invalid Form Body 我不知道该怎么办。
【问题讨论】:
-
我从未使用过此 API,但经过一番调查后,我发现
message.channel.send(embed)因抛出未捕获的错误而失败。这就是您看到错误“UnhandlerPromiseRejectionWarning”的原因。尝试与此示例类似地捕获错误:discord.js.org/#/docs/main/stable/class/…,并进一步调查。看起来问题特定于 Discord API 和/或库本身。在处理 Promise 时使用catch几乎总是一个好主意(如果使用异步语法,则使用 try/catch)。
标签: javascript discord discord.js