| 123456789101112131415161718192021222324252627282930313233343536373839 |
- package util
- import (
- "encoding/json"
- "errors"
- "fmt"
- )
- //ErrUnmarshall err when unmarshall
- var ErrUnmarshall = errors.New("Json Unmarshal Error")
- //CommonError 微信返回的错误信息
- type CommonError struct {
- ErrCode int64 `json:"errcode"`
- ErrMsg string `json:"errmsg"`
- }
- //NewCommonError new CommonError
- func NewCommonError(code int64, msg string) *CommonError {
- return &CommonError{ErrCode: code, ErrMsg: msg}
- }
- func (e *CommonError) Error() string {
- return e.ErrMsg
- }
- //CheckCommonError check CommonError
- func CheckCommonError(jsonData []byte) error {
- var errmsg CommonError
- if err := json.Unmarshal(jsonData, &errmsg); err != nil {
- return ErrUnmarshall
- }
- if errmsg.ErrCode != 0 {
- return fmt.Errorf("Error , errcode=%d , errmsg=%s", errmsg.ErrCode, errmsg.ErrMsg)
- }
- return nil
- }
|