You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord.js 机器人出现ERR_SOCKET_CONNECTION_TIMEOUT连接超时错误求助

Discord.js 机器人出现ERR_SOCKET_CONNECTION_TIMEOUT连接超时错误求助

兄弟我太懂你这种断断续续出问题的崩溃感了!连着四天时不时跳这个Socket连接超时错误,有时候能跑有时候又不行,还摸不着问题出在哪,确实闹心。咱一步步来排查可能的原因:

  • 先排查网络稳定性:这个错误本质是机器人和Discord网关的Socket连接没在规定时间内建立成功,首先得确认你的运行环境(本地/服务器)网络是不是靠谱。可以试试ping Discord网关对应的IP,看看有没有频繁丢包或者延迟过高的情况——网络波动是这类间歇性问题的常见元凶。
  • 更新Discord.js版本:如果你的Discord.js版本比较旧,可能存在已知的连接兼容性问题。打开终端跑一句npm update discord.js,更到最新稳定版再试试。
  • 检查连接配置与重连机制:Discord.js本身自带自动重连逻辑,但如果你手动修改过连接相关的参数(比如自定义超时时间、重连次数),可能会干扰默认的连接流程。可以暂时注释掉这些自定义配置,用默认设置运行看看还会不会出问题。
  • 排查代码里的阻塞操作:如果你的机器人代码里有同步的耗时操作(比如大文件同步读写、长时间的循环计算),会卡住Node.js的事件循环,导致Socket的心跳包没法及时发送,进而触发超时。回忆下最近有没有新增这类代码,改成异步处理试试。
  • 检查服务器资源(如果是部署在VPS上):要是机器人跑在云服务器上,看看CPU、内存是不是被占满了——资源不足的时候,系统没法及时处理Socket连接请求,也会出现超时。可以用top或者htop命令查看资源使用情况。

你遇到的错误日志如下:

triggerUncaughtException(err, true /* fromPromise */);

^

Error [ERR_SOCKET_CONNECTION_TIMEOUT]: Socket connection timeout

at new NodeError (node:internal/errors:399:5)

at internalConnectMultiple (node:net:1098:20)

at Timeout.internalConnectMultipleTimeout (node:net:1637:3)

at listOnTimeout (node:internal/timers:575:11)

at process.processTimers (node:internal/timers:514:7) {

code: 'ERR_SOCKET_CONNECTION_TIMEOUT'

}```

备注:内容来源于stack exchange,提问作者dishu
相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 13:34:31