添加文件: xy_sh/errors.go

This commit is contained in:
renzhiyuan 2026-07-24 18:02:25 +08:00
parent 8a2c02c4fc
commit 9f9316348d
1 changed files with 55 additions and 0 deletions

55
xy_sh/errors.go Normal file
View File

@ -0,0 +1,55 @@
package xy_sh
import "fmt"
// ErrorCode 定义错误码类型
type ErrorCode int
const (
// ErrCodeSuccess 请求成功
ErrCodeSuccess ErrorCode = 0
// ErrCodeFail 请求失败
ErrCodeFail ErrorCode = -1
)
// SDKError SDK自定义错误
type SDKError struct {
Code ErrorCode
Message string
Err error
}
func (e *SDKError) Error() string {
if e.Err != nil {
return fmt.Sprintf("[%d] %s: %v", e.Code, e.Message, e.Err)
}
return fmt.Sprintf("[%d] %s", e.Code, e.Message)
}
func (e *SDKError) Unwrap() error {
return e.Err
}
// NewSDKError 创建SDK错误
func NewSDKError(code ErrorCode, message string, err error) *SDKError {
return &SDKError{
Code: code,
Message: message,
Err: err,
}
}
var (
// ErrInvalidConfig 无效配置
ErrInvalidConfig = NewSDKError(ErrCodeFail, "无效配置", nil)
// ErrEncryptFailed 加密失败
ErrEncryptFailed = NewSDKError(ErrCodeFail, "加密失败", nil)
// ErrDecryptFailed 解密失败
ErrDecryptFailed = NewSDKError(ErrCodeFail, "解密失败", nil)
// ErrSignFailed 签名失败
ErrSignFailed = NewSDKError(ErrCodeFail, "签名失败", nil)
// ErrRequestFailed 请求失败
ErrRequestFailed = NewSDKError(ErrCodeFail, "请求失败", nil)
// ErrResponseParseFailed 响应解析失败
ErrResponseParseFailed = NewSDKError(ErrCodeFail, "响应解析失败", nil)
)