Javascript Discord bot编辑消息太慢

Javascript Discord bot编辑消息太慢,javascript,node.js,discord,discord.js,Javascript,Node.js,Discord,Discord.js,我想让我的discordbot发送一条包含附加文件和文本的消息。然后,机器人必须编辑此文本几次,但问题是,当机器人编辑其消息5次时,它会等待一段时间,然后再次编辑5次,等等。我如何使其编辑消息而不停止 if(msg.content.includes("letter")){ msg.channel.send("alphabet", { files: ["/Users/48602/Videos/discordbot/a

我想让我的discordbot发送一条包含附加文件和文本的消息。然后,机器人必须编辑此文本几次,但问题是,当机器人编辑其消息5次时,它会等待一段时间,然后再次编辑5次,等等。我如何使其编辑消息而不停止

if(msg.content.includes("letter")){                                       


msg.channel.send("alphabet", { files: ["/Users/48602/Videos/discordbot/aaa.png"]})}
      if(msg.content === 'alphabet'){


        msg.edit("**a**")
        msg.edit("**b**")
        msg.edit("**c**")
        msg.edit("**d**") // Here bot stop for a 2 seconds and i dont know why
        msg.edit("**e**")
        msg.edit("**f**")
        msg.edit("**g**")
        msg.edit("**h**")
        msg.edit("**i**")
        msg.edit("**j**")// Here bot stop for a 2 seconds and i dont know why
        msg.edit("**k**")
        msg.edit("**l**")
        msg.edit("**m**")
        msg.edit("**n**")
        msg.edit("**o**") // Here bot stop for a 2 seconds and i dont know why

      msg.delete()
      }

不和谐有其根源。试图绕过这一点将被视为API滥用(后面的解决方案不是API滥用)

超过此限制将暂停其他请求,直到超过一定的秒数。在我的研究过程中,我发现:
每台服务器每5秒5次(如果您不明白我上面说的话)

在上,它告诉您:

对于共享相同速率限制的不同HTTP方法,上述规则[rate limits]目前只有一个例外,即删除消息。删除消息属于单独的、更高的速率限制,因此机器人程序能够更快地从频道中删除内容(这对调节机器人程序很有用)

在不滥用API的情况下,一种解决方法是发送消息,并删除以前的消息,因为删除消息有更高的限制

另一种解决方法是向动画中添加中间超时。 一种简单的方法,例如:

function async wait = { require("util").promisify(setTimeout); };
//syntax: await wait(1000); to "pause" for 1 second

您需要对计时进行调整,以使其符合您预期的动画速度,并且不会因速率限制而暂停。

这可能是由于,您无法避免。速率限制是为了防止您滥发API,这正是您在示例中所做的。请注意,如果您持续达到费率限制,您的机器人帐户可能会被禁止。此外,您为什么要做您正在做的事情?立即编辑消息而没有任何延迟意味着用户几乎没有机会(如果有的话)看到实际发送的内容。这种行为的用例是什么?这只是一个例子。在我的情况下,我想在赌场上玩类似smth的游戏“吃角子老虎机”,但当我在这些编辑之间添加1s或2s延迟时,机器人会在5次之后停止,无论如何,有没有办法修复它?编辑之间应该延迟多长时间?你不应该试图通过不断编辑消息来创建某种动画。只需显示插槽旋转的最终结果。就像我说的,除了简单地减少你所做的事情的频率之外,没有办法绕过利率限制。这些限制的存在是有原因的(在提供的链接中解释)discord.js会准确地处理费率限制,这就是为什么它会以5次突发的方式发送它。这是有计划的行为。