常见无法连接问题汇总
Closed this issue · 5 comments
MrXiaoM commented
如题,在这个 issue 记录一些无法连接到 Onebot 的情况的说明。
MrXiaoM commented
MrXiaoM commented
连接到 NapCat,60秒后自动断开连接
▌ 服务器连接因 未知原因 已关闭 (关闭码: ABNORMAL_CLOSE)
常见于 Linux 系统,大约由 Java-WebSocket 的心跳机制引起,到配置文件 overflow.json
将 heartbeat_check_seconds
设为 0
,关闭心跳机制即可。
MrXiaoM commented
关闭码具体都是什么意思
关闭码是 RFC 6455 WebSocket 协议标准的内容。
「关闭码」对应的数值请到 ConnectFactory.kt 查看。
数值对应的说明文档请翻阅 RFC 6455 协议标准的文档,7.4.1 章节
https://datatracker.ietf.org/doc/html/rfc6455#section-7.4.1
(不知道文档网站什么毛病,ID 没成功转跳,可能需要你自己去目录点击 7.4.1 来转跳)
MrXiaoM commented
获取群聊/好友列表超时
[get_group_list] 请求失败: Timed out waiting for XXXXXX ms。
可能你的群或好友有点多,拉取需要的时间超出了预期的时间,在启动参数添加
-Doverflow.timeout=20000
以修改超时时间。
如果还是超时,把时间 20000
再调高点,时间单位是 毫秒
。
MrXiaoM commented
群活跃 / 需要账号凭证的接口 访问错误
[get_credentials] 请求失败: ***
[get_csrf_token] 请求失败: ***
[get_cookies] 请求失败: ***
...
at top.mrxiaom.overflow.internal.utils.BotUtilsKt$httpGet$2.invokeSuspend(BotUtils.kt:90)
...
群活跃(群员等级、群荣誉等等)信息复制自 mirai 原本的实现,即获取账号凭证然后访问相关的 http 接口。
由于支持获取完整账号凭证(即 get_credentials 接口)的 Onebot 实现极少,这块在写好之后就一直没有测试,不一定可以使用。
如果出现类似的报错,请开启 overflow.json
中的 no_platform
选项,以关闭所有需要使用账号凭证的接口。