From 652647bdc04cf1e1b788e9c64a321a9f0e4e60a5 Mon Sep 17 00:00:00 2001 From: lixiangwuxian Date: Mon, 16 Jun 2025 14:25:30 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=9C=A8=20QQMessage=20=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E4=B8=AD=E6=B7=BB=E5=8A=A0=20SetData=20=E6=96=B9?= =?UTF-8?q?=E6=B3=95=EF=BC=8C=E5=B9=B6=E4=BC=98=E5=8C=96=20ParseStructMess?= =?UTF-8?q?ages=20=E5=87=BD=E6=95=B0=E4=B8=AD=E7=9A=84=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- qq_message/cq_message.go | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/qq_message/cq_message.go b/qq_message/cq_message.go index 00e3b5a..1f14767 100644 --- a/qq_message/cq_message.go +++ b/qq_message/cq_message.go @@ -11,6 +11,7 @@ import ( type QQMessage interface { ToCQString() string GetMessageType() string + SetData(data json.RawMessage) error } // RawMessage 用于初始解析 JSON 的通用结构 @@ -67,14 +68,9 @@ func ParseStructMessages(msgData any) []QQMessage { } dataByte, _ := json.Marshal(rawMap["data"]) // 使用类型断言获取具体类型的Data字段 - if v, ok := msg.(interface{ SetData(json.RawMessage) error }); ok { - if err := v.SetData(dataByte); err != nil { - // return nil, fmt.Errorf("解析消息数据失败: %v", err) - log.Println("❎解析消息数据失败:", err) - continue - } - } else { - log.Printf("❎消息类型 %s 未实现 SetData 方法\n", rawMap["type"]) + if err := msg.SetData(dataByte); err != nil { + // return nil, fmt.Errorf("解析消息数据失败: %v", err) + log.Println("❎解析消息数据失败:", err) continue }