Discord.js Invalid Form Body 限制:使用bulkDelete()时int值应小于或等于100.error

时间:2021-03-25 00:05:29

标签: javascript node.js discord.js

所以我得到了这个作为命令代码:

    if(!args[0]){
        message.channel.send(client.cmdlines.wrongUsage);
    }else if(args[1]){
        message.channel.send(client.cmdlines.wrongUsage);
    }else{
        if(message.member.hasPermission('ADMINISTRATOR')){
            if(!isNaN(args[0])){
                message.channel.bulkDelete(args[0]+1).then(msg => {
                    message.channel.send(`Deleted ${args[0]} messages.`).then(msg => msg.delete({ timeout: 3000 })).catch(e => console.log(e));
                });
            }else{
                message.channel.send(client.cmdlines.wrongUsage);
            }
        }else{
            message.channel.send(client.cmdlines.missingPerms);
        }
    }
}

出于某种原因,我得到了:无效的表单正文 限制:int 值应小于或等于 100。 错误。有人知道问题可能是什么

1 个答案:

答案 0 :(得分:0)

它在错误中。discord.js 不允许您一次批量删除超过 100 条消息。运行一个函数来确定您需要循环多少次才能删除所有所需的消息 (Math.floor(args[0]/100)。然后,您需要从 100 条消息中删除剩余的消息数。(args[0] - Math.floor(args[0])*100)

循环删除 100 条消息的第一个值,然后删除消息后的第二个值。

哦,请确保首先将 args[0] 解析为 int