Browse Source

fix(relay-xunfei): 修复讯飞渠道无法使用问题 #1740

将连接延迟关闭逻辑调整到协程中执行,防止在完全接收到所有数据前提前关闭
joesonshaw 3 months ago
parent
commit
6c0b1681f9
1 changed files with 3 additions and 4 deletions
  1. 3 4
      relay/channel/xunfei/relay-xunfei.go

+ 3 - 4
relay/channel/xunfei/relay-xunfei.go

@@ -207,10 +207,6 @@ func xunfeiMakeRequest(textRequest dto.GeneralOpenAIRequest, domain, authUrl, ap
 		return nil, nil, err
 	}
 
-	defer func() {
-		conn.Close()
-	}()
-
 	data := requestOpenAI2Xunfei(textRequest, appId, domain)
 	err = conn.WriteJSON(data)
 	if err != nil {
@@ -220,6 +216,9 @@ func xunfeiMakeRequest(textRequest dto.GeneralOpenAIRequest, domain, authUrl, ap
 	dataChan := make(chan XunfeiChatResponse)
 	stopChan := make(chan bool)
 	go func() {
+		defer func() {
+			conn.Close()
+		}()
 		for {
 			_, msg, err := conn.ReadMessage()
 			if err != nil {