错误 [BAN_RESOLVE_ID]:无法将用户 ID 解析为解禁

Error [BAN_RESOLVE_ID]: Couldn#39;t resolve the user ID to unban(错误 [BAN_RESOLVE_ID]:无法将用户 ID 解析为解禁)
本文介绍了错误 [BAN_RESOLVE_ID]:无法将用户 ID 解析为解禁的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我正在尝试创建自己的 discord 机器人并现在创建一个 unban 命令.我的代码如下.我禁止了一个朋友并尝试通过输入 -unban 271375814384287744 testing 来解禁.然后它给我一个错误说 Error [BAN_RESOLVE_ID]: Couldn't resolve the user ID to unban. 任何帮助将不胜感激.

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 解析为解禁的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Should I use window.navigate or document.location in JavaScript?(我应该在 JavaScript 中使用 window.navigate 还是 document.location?)
Power BI - Get data from post request(Power BI - 从发布请求中获取数据)
Embed a Power BI report in React JS to get report instance(在 React JS 中嵌入 Power BI 报表以获取报表实例)
Create Report in Embed View via PowerBI API(通过 PowerBI API 在嵌入视图中创建报表)
Interactive Dialog Box in PowerBI(PowerBI 中的交互式对话框)
Print/Generate PDF of embedded power bi report(打印/生成嵌入式 power bi 报告的 PDF)