Discord.js 无法执行
Posted
技术标签:
【中文标题】Discord.js 无法执行【英文标题】:Discord.js failing to execute 【发布时间】:2020-11-18 10:33:00 【问题描述】:我使用我的机器人令牌从discord.js documentation 运行示例代码,但它无法执行并出现以下错误:
(节点:9880)UnhandledPromiseRejectionWarning:AbortError:用户中止了请求。 在 RequestHandler.execute (/home/pi/node_modules/discord.js/src/rest/RequestHandler.js:107:21) 在 process._tickCallback (internal/process/next_tick.js:68:7) (节点:9880)UnhandledPromiseRejectionWarning:未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。 (拒绝编号:2) (节点:9880)[DEP0018] DeprecationWarning:不推荐使用未处理的承诺拒绝。将来,未处理的 Promise 拒绝将使用非零退出代码终止 Node.js 进程。我在我的 rpi 和我的电脑上收到了这个错误
【问题讨论】:
【参考方案1】:事实证明,这是由于连接速度慢,discord.js 会超时。这是通过更快的连接和远程主机解决的
【讨论】:
【参考方案2】:根据this github 评论,这似乎是由于请求解决时间过长造成的,而 Discord.js 只是将其中止以避免卡住。
如果这会导致您的机器人离线而导致问题,您可以添加以下行以捕获代码中所有未处理的承诺拒绝:
process.on("unhandledRejection", error => console.error("Promise rejection:", error);
这不仅会阻止您的机器人崩溃,还会提供更详细的错误信息,您可以进一步调查here。
【讨论】:
我尝试过并收到一个新错误:Promise reject: AbortError: The user aborted a request.在 RequestHandler.execute (/home/pi/node_modules/discord.js/src/rest/RequestHandler.js:107:21) 在 process._tickCallback (internal/process/next_tick.js:68:7) 名称:'AbortError' ,代码:500,方法:'get',路径:'/gateway/bot' @IanSwift 需要明确的是,您正在尝试运行 Discord.js 主页上提供的示例代码? 是的,我正在尝试运行 Discord.js 主页上提供的代码 @IanSwift 使用我的机器人令牌运行示例代码对我来说效果很好。也许这是您的机器人令牌的问题? 我使用该令牌运行了 discord.io 机器人,它们运行良好。网络连接速度慢可能是我的问题吗?以上是关于Discord.js 无法执行的主要内容,如果未能解决你的问题,请参考以下文章