javascript - Discord.js 无效的表单正文限制:int 值应小于或等于 100。使用 bulkDelete() 时出错
问题描述
所以我得到了这个作为命令代码:
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。错误。有人知道问题可能是什么吗
解决方案
它在错误中.. discord.js 不允许您一次批量删除超过 100 条消息。运行一个函数来确定您需要循环多少次才能删除所有所需的消息 ( Math.floor(args[0]/100
)。然后,您需要从 100 条消息中删除剩余的消息数。 ( args[0] - Math.floor(args[0])*100
)
循环删除第一个值的 100 条消息,然后在删除消息后的第二个值。
哦,请确保首先解析args[0]
为 int
推荐阅读
- ruby-on-rails - 将所有传入的域变体重定向到绝对域 Heroku Rails
- python - 我可以在代码中重新分配一个整数吗?
- sql-server - Asp.net Core 2.2 将整个数据库表存储在内存中 EF Core
- typescript - 如何排除`tsconfig.js`目录下的任何文件?
- jenkins - 报告同步在 Jenkins 作业中引发 fetch 错误
- c# - DTD 验证#必填字段和空字符串
- django - 如何从 TemplateView POST 到 GenericAPIView
- bash - 本地内置的引用/转义输出仅使用内置传递回自身?
- python - 是否可以在 Windows 7 家庭高级版上安装 postgresql?
- python - 在带有 Python 请求的网站上使用搜索功能(ebay)