如何根据操作码 (discord.js) 分离捕获的错误

How to separate caught errors based on their OPCODE (discord.js)

所以基本上,我有一个机器人,它的部分功能是在公会(discord 服务器)内部创建通道。我有通用的错误处理程序和 catch 块,但我想知道如何分离操作码“30013”的错误 'Maximum number of guild channels reached (500)',因此如果这是错误,它会显示一条消息,说明已创建最大数量的通道,并允许捕获其他错误。

理想情况下,所有错误仍然可以被捕获,但如果错误是所需的错误,它将按照我的要求执行,而不是像错误处理程序那样简化错误 JSON 响应。

检查错误对象并查看 属性 与其他对象的区别(很可能是 code 属性)。一旦你知道,检查你的 catch 块中的 属性 是否与所需的匹配。如果匹配,请继续使用您的特定代码。

如果收到的错误响应与 this link.

相匹配,那么这些行应该可以正常工作
try {
    // You code here
}
catch(err) {
    if (err.code == 30013) {
    // feedback code here
    }
}

因为我不确定您是否使用异步,所以我将介绍标准 try/catch 格式与 .catch 格式。不管逻辑应该是一样的。