Closed DaFeimian closed 9 months ago
## 配置文件中的值,全为默认值 ## 启用的 adapter, 内置有 http, ws, reverse-ws, webhook adapters: - http - ws ## 是否开启认证流程, 若为 true 则建立连接时需要验证 verifyKey ## 建议公网连接时开启 enableVerify: true verifyKey: 1234567890 ## 开启一些调试信息 debug: false ## 是否开启单 session 模式, 若为 true,则自动创建 session 绑定 console 中登录的 bot ## 开启后,接口中任何 sessionKey 不需要传递参数 ## 若 console 中有多个 bot 登录,则行为未定义 ## 确保 console 中只有一个 bot 登录时启用 singleMode: false ## 历史消息的缓存大小 ## 同时,也是 http adapter 的消息队列容量 cacheSize: 4096 ## adapter 的单独配置,键名与 adapters 项配置相同 adapterSettings: ## 详情看 http adapter 使用说明 配置 http: host: localhost port: 23750 cors: ["*"] unreadQueueMaxSize: 100 ## 详情看 websocket adapter 使用说明 配置 ws: host: localhost port: 23750 reservedSyncId: -1
{ "Key": "", "host": "127.0.0.1", "port": "23750", "qq": "***", // 隐匿 "session": "" }
Traceback (most recent call last): File "ChatClass.py", line 393, in run File "Chatmain.py", line 1965, in getcommand_chat File "simuse.py", line 89, in Fetch_Message KeyError: 'data'
修改host之后就会弹出api-http未连接,所以猜测这里的"host": "127.0.0.1",和"port": "23750",是没有问题的。
api-http
"host": "127.0.0.1",
"port": "23750",
#接收消息 (若传入deal=0,则表示返回不经过简化的原消息信息和事件) def Fetch_Message(data, deal=1): if type(data) == type(0): raise ConnectionError('未与api-http取得连接,或mirai未登录') host = data['host'] session = data['session'] url = 'http://' + host + '/fetchMessage?' + 'count=10'+ '&sessionKey=' + session res = r.request('get', url) res = json.loads(res.text) Message = res['data'] if deal == 1: Message = Fetch_Message_info(Message) return Message elif deal == 0: return Message else: return 0
没有仔细了解项目和相关api,因此猜测是'count=10'和 '&sessionKey=' + session写反了,我看mirai-api-http-2.10.0中获取头部队列消息是:
'count=10'
'&sessionKey=' + session
mirai-api-http-2.10.0
[GET] /fetchMessage?sessionKey=YourSessionKey&count=10
版本
配置文件:
setting.yml:
data.json
报错日志
修改host之后就会弹出
api-http
未连接,所以猜测这里的"host": "127.0.0.1",
和"port": "23750",
是没有问题的。报错对应源码处:
猜测原因
没有仔细了解项目和相关api,因此猜测是
'count=10'
和'&sessionKey=' + session
写反了,我看mirai-api-http-2.10.0
中获取头部队列消息是: