refactor(tts): 删除 errorsx 包,使用标准库错误处理

## 变更内容

### 1. 删除 errorsx 包
- 删除 pkg/errorsx/handler.go(未使用)
- 删除 pkg/errorsx/error.go(无意义的常量)

### 2. 使用标准库错误处理
- 移除 "game-driver/pkg/errorsx" 导入
- 用 fmt.Errorf 替换所有 errorsx.XxxErr
- 错误信息更清晰,保留完整上下文

### 3. 改进前后对比
```go
// 之前
return errorsx.ThirdPartyErr  //  上下文丢失

// 现在
return fmt.Errorf("获取Token失败: %s", resultMessage.ErrMsg)  //  完整上下文
```

## 优势
 错误信息包含完整上下文
 减少一个自定义包
 使用标准库,更优雅
 代码行数减少:166 → 161 行

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-08 14:10:41 +08:00
parent e4c34f0eec
commit bee3b98798
3 changed files with 6 additions and 77 deletions

View File

@@ -7,7 +7,6 @@ import (
"game-driver/config"
"game-driver/leaf"
"game-driver/pkg/audio"
"game-driver/pkg/errorsx"
"go.uber.org/zap"
"io"
"log"
@@ -92,8 +91,7 @@ func (tts *AliTTS) getToken() error {
}
if resultMessage.ErrMsg != "" {
zap.S().Errorf("[TTS] 获取Token失败: %s", resultMessage.ErrMsg)
return errorsx.ThirdPartyErr
return fmt.Errorf("获取Token失败: %s", resultMessage.ErrMsg)
}
tts.tokenResult = resultMessage.TokenResult
@@ -135,26 +133,23 @@ func (tts *AliTTS) Get(ctx context.Context, text string) (io.Reader, error) {
return ttsData.Data, err
}
// 等待合成完成(带超时)
// 等待合成完成
select {
case done := <-ch:
if !done {
zap.S().Error("[TTS] 合成失败: done=false")
return ttsData.Data, errorsx.ThirdPartyErr
return ttsData.Data, fmt.Errorf("TTS合成失败")
}
size := ttsData.Data.(*bytes.Buffer).Len()
if size == 0 {
zap.S().Error("[TTS] 合成数据为空")
return ttsData.Data, errorsx.ThirdPartyErr
return ttsData.Data, fmt.Errorf("TTS合成数据为空")
}
return ttsData.Data, nil
case <-time.After(time.Duration(tts.Timeout) * time.Second):
zap.S().Errorf("[TTS] 合成超时: %s", text)
return ttsData.Data, errorsx.DriverTimeoutErr
return ttsData.Data, fmt.Errorf("TTS合成超时")
case <-ctx.Done():
return ttsData.Data, errorsx.DriverCancelErr
return ttsData.Data, fmt.Errorf("请求被取消")
}
}