添加文件: intelligence_finance_v1/errors.go
This commit is contained in:
parent
eb24b11ba3
commit
92ed272cae
|
|
@ -0,0 +1,59 @@
|
||||||
|
package intelligence_finance_v1
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
// SDKError SDK通用错误类型
|
||||||
|
type SDKError struct {
|
||||||
|
Code int `json:"code"`
|
||||||
|
Message string `json:"message"`
|
||||||
|
Err error `json:"-"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// Error 实现error接口
|
||||||
|
func (e *SDKError) Error() string {
|
||||||
|
if e.Err != nil {
|
||||||
|
return fmt.Sprintf("code=%d, message=%s, err=%v", e.Code, e.Message, e.Err)
|
||||||
|
}
|
||||||
|
return fmt.Sprintf("code=%d, message=%s", e.Code, e.Message)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Unwrap 返回包装的错误
|
||||||
|
func (e *SDKError) Unwrap() error {
|
||||||
|
return e.Err
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewSDKError 创建SDK错误
|
||||||
|
func NewSDKError(code int, message string, err error) *SDKError {
|
||||||
|
return &SDKError{
|
||||||
|
Code: code,
|
||||||
|
Message: message,
|
||||||
|
Err: err,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 预定义错误码
|
||||||
|
const (
|
||||||
|
ErrCodeSuccess = 0
|
||||||
|
ErrCodeUnknown = -1
|
||||||
|
ErrCodeInvalidParam = 1001
|
||||||
|
ErrCodeSignatureFailed = 1002
|
||||||
|
ErrCodeNetworkError = 1003
|
||||||
|
ErrCodeRequestTimeout = 1004
|
||||||
|
ErrCodeServerError = 2001
|
||||||
|
ErrCodeUnauthorized = 2002
|
||||||
|
ErrCodeNotFound = 2003
|
||||||
|
ErrCodeRateLimit = 2004
|
||||||
|
)
|
||||||
|
|
||||||
|
// 预定义错误
|
||||||
|
var (
|
||||||
|
ErrUnknown = NewSDKError(ErrCodeUnknown, "未知错误", nil)
|
||||||
|
ErrInvalidParam = NewSDKError(ErrCodeInvalidParam, "参数无效", nil)
|
||||||
|
ErrSignatureFailed = NewSDKError(ErrCodeSignatureFailed, "签名失败", nil)
|
||||||
|
ErrNetworkError = NewSDKError(ErrCodeNetworkError, "网络错误", nil)
|
||||||
|
ErrRequestTimeout = NewSDKError(ErrCodeRequestTimeout, "请求超时", nil)
|
||||||
|
ErrServerError = NewSDKError(ErrCodeServerError, "服务端错误", nil)
|
||||||
|
ErrUnauthorized = NewSDKError(ErrCodeUnauthorized, "未授权", nil)
|
||||||
|
ErrNotFound = NewSDKError(ErrCodeNotFound, "未找到", nil)
|
||||||
|
ErrRateLimit = NewSDKError(ErrCodeRateLimit, "请求频率限制", nil)
|
||||||
|
)
|
||||||
Loading…
Reference in New Issue