添加文件: xy_sh/errors.go
This commit is contained in:
parent
8a2c02c4fc
commit
9f9316348d
|
|
@ -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)
|
||||
)
|
||||
Loading…
Reference in New Issue