【发布时间】:2020-11-21 20:11:58
【问题描述】:
我目前正在尝试制作一个连接到 Discord API 并能够为我的机器人提供服务器数量的 node.js 程序。我已经就这个话题提出了一些问题,如果你对此感兴趣,请查看我的帐户。目前程序可以连接网关,心跳,接收GUILD_CREATE和GUILD_DELETE事件,所以该部分全部工作。目前,我正在尝试在网关不可避免地断开连接时重新连接和恢复功能。在 Discord API 文档中,它说用于重新连接的会话 ID 包含在 Ready 事件中,该事件是“在初始握手之后”发送的,但是我没有看到任何类型的 Ready 事件发送。
我得到的事件顺序是:
- 我正在请求一个 URL 以通过 XMLHttpRequest 连接并获得响应
- 我正在连接到 URL 并收到一个“连接”事件
- API 发送操作码 10“Hello”消息
- 我开始使用服务器进行心跳检测
- 我向服务器发送操作码 2“识别”
- 我收到第一个操作码 11 心跳确认。
- 我开始收到
GUILD_CREATE公会的事件,然后是之后的所有其他事件
在这一系列事件中,没有任何地方发送“就绪”,或者至少我没有收到。我尝试记录我收到的每一条数据,但仍然没有“准备好”。有谁知道“就绪”在我的事件序列中的哪个位置,或者我需要做什么才能看到它?
【问题讨论】:
标签: javascript node.js discord discord.js