fix: update error types for upstream errors and JSON marshal failure

This commit is contained in:
CaIon
2025-08-26 16:26:56 +08:00
parent eef73e3699
commit 33d601db82
3 changed files with 5 additions and 5 deletions

View File

@@ -11,7 +11,7 @@ func DeepCopy[T any](src *T) (*T, error) {
return nil, fmt.Errorf("copy source cannot be nil") return nil, fmt.Errorf("copy source cannot be nil")
} }
var dst T var dst T
err := copier.CopyWithOption(&dst, src, copier.Option{DeepCopy: true, IgnoreEmpty: false}) err := copier.CopyWithOption(&dst, src, copier.Option{DeepCopy: true, IgnoreEmpty: true})
if err != nil { if err != nil {
return nil, err return nil, err
} }

View File

@@ -488,14 +488,14 @@ func (c *ClaudeResponse) GetClaudeError() *types.ClaudeError {
case string: case string:
// 处理简单字符串错误 // 处理简单字符串错误
return &types.ClaudeError{ return &types.ClaudeError{
Type: "error", Type: "upstream_error",
Message: err, Message: err,
} }
default: default:
// 未知类型,尝试转换为字符串 // 未知类型,尝试转换为字符串
return &types.ClaudeError{ return &types.ClaudeError{
Type: "unknown_error", Type: "unknown_upstream_error",
Message: fmt.Sprintf("%v", err), Message: fmt.Sprintf("unknown_error: %v", err),
} }
} }
} }

View File

@@ -130,7 +130,7 @@ func TextHelper(c *gin.Context, info *relaycommon.RelayInfo) (newAPIError *types
jsonData, err := common.Marshal(convertedRequest) jsonData, err := common.Marshal(convertedRequest)
if err != nil { if err != nil {
return types.NewError(err, types.ErrorCodeConvertRequestFailed, types.ErrOptionWithSkipRetry()) return types.NewError(err, types.ErrorCodeJsonMarshalFailed, types.ErrOptionWithSkipRetry())
} }
// apply param override // apply param override