错误[BAN_RESOLVE_ID]:无法解析用户ID以取消禁止 [英] Error [BAN_RESOLVE_ID]: Couldn't resolve the user ID to unban
本文介绍了错误[BAN_RESOLVE_ID]:无法解析用户ID以取消禁止的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试创建自己的discord bot并创建一个unban命令。我的代码如下。我禁止了一个朋友,并尝试通过输入 -unban 271375814384287744测试
来取消禁止。然后,它给我一个错误,提示错误[BAN_RESOLVE_ID]:无法解析用户ID来取消禁止。
任何帮助将不胜感激。
I am trying to create my own discord bot and creating an unban command now. My code is below. I banned a friend and tried to unban by typing -unban 271375814384287744 testing
. It then gives me an error saying Error [BAN_RESOLVE_ID]: Couldn't resolve the user ID to unban.
Any help would be appreciated.
const Discord = require('discord.js');
const client = new Discord.Client();
const embed = new Discord.MessageEmbed()
.setColor('#39de33')
module.exports = {
name: 'unban',
description: "This unbans a user",
execute(message, args){
if (message.member.permissions.has("BAN_MEMBERS")){
if (!isNaN(args[0])) {
const bannedMember = client.users.fetch(args[0]);
var reason = args.slice(1).join(" ");
if(!reason) {
reason = "No reason given!"
}
if (bannedMember) {
bannedMember
message.guild.members.unban(bannedMember, reason)
.then(() => {
embed.setDescription(`Successfully unbanned **${user.tag}**`);
message.channel.send(embed);
})
.catch(err => {
embed.setDescription('I was unable to unban the member');
message.channel.send(embed);
console.error(err);
});
} else {
embed.setDescription("That user isn't in this guild!");
message.channel.send(embed);
}
} else {
embed.setDescription("You need to provide an user ID to unban");
message.channel.send(embed);
}
} else {
embed.setDescription("You do not have `BAN_MEMBERS` permissions to unban this member");
message.channel.send(embed);
}
}
}
推荐答案
我尝试了这个问题,并得到了相同的错误。
I tried this out and got the same error.
Promise {
<rejected> Error [BAN_RESOLVE_ID]: Couldn't resolve the user ID to unban.
at GuildMemberManager.unban (/home/kayuimineko/Arc-Neko/node_modules/discord.js/src/managers/GuildMemberManager.js:240:36)
at eval (eval at <anonymous> (/home/kayuimineko/Arc-Neko/cmdhandler/eval.js:49:26), <anonymous>:1:23)
at /home/kayuimineko/Arc-Neko/cmdhandler/eval.js:49:26
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/model.js:4838:16
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/model.js:4838:16
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/helpers/promiseOrCallback.js:24:16
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/model.js:4861:21
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/query.js:4407:11
at /home/kayuimineko/Arc-Neko/node_modules/kareem/index.js:135:16
at processTicksAndRejections (internal/process/task_queues.js:79:11) {
[Symbol(code)]: 'BAN_RESOLVE_ID'
}
}
正在运行
message.guild.members.unban(client.users.fetch(config.admin.owner.id), "reason")
// Ignore the config part it's fine
事实证明,您应该仅通过其ID而不是其用户属性来取消禁止该人员。
因此,要解除禁令,请改用以下代码:
Turns out, you should just unban the people by their IDs instead of their user property. So, to unban the banned member use this code instead:
const Discord = require('discord.js');
const client = new Discord.Client();
const embed = new Discord.MessageEmbed()
.setColor('#39de33')
module.exports = {
name: 'unban',
description: "This unbans a user",
execute(message, args){
if (message.member.permissions.has("BAN_MEMBERS")){
if (!isNaN(args[0])) {
const bannedMember = message.guild.members.cache.get(args[0]) // Get the `member` property instead to recall later.
var reason = args.slice(1).join(" ");
if(!reason) {
reason = "No reason given!"
}
if (bannedMember) {
bannedMember
message.guild.members.unban(bannedMember.id, reason)
.then(() => {
embed.setDescription(`Successfully unbanned **${bannedMember.user.tag}**`); // `user` is undefined.
message.channel.send(embed);
})
.catch(err => {
embed.setDescription('I was unable to unban the member');
message.channel.send(embed);
console.error(err);
});
} else {
embed.setDescription("That user isn't in this guild!");
message.channel.send(embed);
}
} else {
embed.setDescription("You need to provide an user ID to unban");
message.channel.send(embed);
}
} else {
embed.setDescription("You do not have `BAN_MEMBERS` permissions to unban this member");
message.channel.send(embed);
}
}
}
这篇关于错误[BAN_RESOLVE_ID]:无法解析用户ID以取消禁止的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文