fix: 优化 ParseStructMessages 函数中的类型断言,简化消息数组解析逻辑

This commit is contained in:
lixiangwuxian 2025-06-16 11:52:03 +08:00
parent c502c87e15
commit 3dc8c74e6b

View File

@ -52,9 +52,9 @@ func CreateMessage(messageType string) (QQMessage, error) {
// ParseStructMessages 解析消息数组
func ParseStructMessages(msgData any) []QQMessage {
log.Println("解析消息数组:", msgData)
switch msgData.(type) {
switch msgData := msgData.(type) {
case []map[string]any:
msgArray := msgData.([]map[string]any)
msgArray := msgData
messages := make([]QQMessage, 0, len(msgArray))
for _, raw := range msgArray {
msg, err := CreateMessage(raw["type"].(string))
@ -80,7 +80,7 @@ func ParseStructMessages(msgData any) []QQMessage {
log.Println("解析出的QQ消息数组:", messages)
return messages
case string:
return []QQMessage{NewTextMessage().ParseMessage(msgData.(string))}
return []QQMessage{NewTextMessage().ParseMessage(msgData)}
}
return nil
}