|
@@ -60,9 +60,6 @@ func (manager *ConnectionManager) HandleMessage(userID int, sessionID string, me
|
|
if !exists {
|
|
if !exists {
|
|
return errors.New("session not found")
|
|
return errors.New("session not found")
|
|
}
|
|
}
|
|
- if string(message) == "pong" {
|
|
|
|
- return nil
|
|
|
|
- }
|
|
|
|
var userMessage Message
|
|
var userMessage Message
|
|
err := json.Unmarshal(message, &userMessage)
|
|
err := json.Unmarshal(message, &userMessage)
|
|
if err != nil {
|
|
if err != nil {
|
|
@@ -74,14 +71,19 @@ func (manager *ConnectionManager) HandleMessage(userID int, sessionID string, me
|
|
|
|
|
|
resp, err := llmService.KnowledgeBaseChat(userMessage.Query, userMessage.KbName, session.History)
|
|
resp, err := llmService.KnowledgeBaseChat(userMessage.Query, userMessage.KbName, session.History)
|
|
defer func() {
|
|
defer func() {
|
|
- if resp != nil && resp.Body != nil {
|
|
|
|
|
|
+ if resp != nil && resp.Body != nil && err == nil {
|
|
_ = resp.Body.Close()
|
|
_ = resp.Body.Close()
|
|
}
|
|
}
|
|
}()
|
|
}()
|
|
|
|
+ if resp == nil {
|
|
|
|
+ return errors.New("知识库问答失败: 无应答")
|
|
|
|
+ }
|
|
|
|
+
|
|
if err != nil {
|
|
if err != nil {
|
|
err = errors.New(fmt.Sprintf("知识库问答失败: httpCode:%d,错误信息:%s", resp.StatusCode, http.StatusText(resp.StatusCode)))
|
|
err = errors.New(fmt.Sprintf("知识库问答失败: httpCode:%d,错误信息:%s", resp.StatusCode, http.StatusText(resp.StatusCode)))
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
|
|
+
|
|
if resp.StatusCode != http.StatusOK {
|
|
if resp.StatusCode != http.StatusOK {
|
|
err = errors.New(fmt.Sprintf("知识库问答失败: httpCode:%d,错误信息:%s", resp.StatusCode, http.StatusText(resp.StatusCode)))
|
|
err = errors.New(fmt.Sprintf("知识库问答失败: httpCode:%d,错误信息:%s", resp.StatusCode, http.StatusText(resp.StatusCode)))
|
|
return err
|
|
return err
|