1
0
mirror of https://github.com/silenceper/wechat.git synced 2026-02-08 22:52:27 +08:00

添加微信客服SDK (#436)

* 添加微信客服SDK

* polish:优化签名函数

* polish:优化注释内容

* polish:复用已有的Token以及CommonError,移除无用的输出

* polish:复用已有的消息加解密

* fix:修复错误信息被覆盖的问题

* polish:go fmt 文件
This commit is contained in:
Afeyer
2021-08-17 10:19:01 +08:00
committed by GitHub
parent fc1fc7e84e
commit 8ceabc2d0b
17 changed files with 1299 additions and 1 deletions

67
work/kf/error.go Normal file
View File

@@ -0,0 +1,67 @@
package kf
import (
"reflect"
"strings"
)
// Error 错误
type Error string
const (
// SDKInitFailed 错误码50001
SDKInitFailed Error = "SDK初始化失败"
// SDKCacheUnavailable 错误码50002
SDKCacheUnavailable Error = "缓存无效"
// SDKUnknownError 错误码50003
SDKUnknownError Error = "未知错误"
// SDKInvalidCredential 错误码40001
SDKInvalidCredential Error = "不合法的secret参数"
// SDKInvalidCorpID 错误码40013
SDKInvalidCorpID Error = "无效的 CorpID"
// SDKAccessTokenInvalid 错误码40014
SDKAccessTokenInvalid Error = "AccessToken 无效"
// SDKAccessTokenMissing 错误码41001
SDKAccessTokenMissing Error = "缺少AccessToken参数"
// SDKAccessTokenExpired 错误码42001
SDKAccessTokenExpired Error = "AccessToken 已过期"
// SDKApiFreqOutOfLimit 错误码45009
SDKApiFreqOutOfLimit Error = "接口请求次数超频"
// SDKWeWorkAlready 错误码95011
SDKWeWorkAlready Error = "已在企业微信使用微信客服"
)
//Error 输出错误信息
func (r Error) Error() string {
return reflect.ValueOf(r).String()
}
// NewSDKErr 初始化SDK实例错误信息
func NewSDKErr(code int64, msgList ...string) Error {
switch code {
case 50001:
return SDKInitFailed
case 50002:
return SDKCacheUnavailable
case 40001:
return SDKInvalidCredential
case 41001:
return SDKAccessTokenMissing
case 42001:
return SDKAccessTokenExpired
case 40013:
return SDKInvalidCorpID
case 40014:
return SDKAccessTokenInvalid
case 45009:
return SDKApiFreqOutOfLimit
case 95011:
return SDKWeWorkAlready
default:
//返回未知的自定义错误
if len(msgList) > 0 {
return Error(strings.Join(msgList, ","))
}
return SDKUnknownError
}
}