- [#] Standardize error messages
This commit is contained in:
parent
0f48567034
commit
42206c10a3
4
bot.go
4
bot.go
@ -139,7 +139,7 @@ func (b *Bot) Login() error {
|
|||||||
b.ScanCallBack(resp.Raw)
|
b.ScanCallBack(resp.Raw)
|
||||||
}
|
}
|
||||||
case StatusTimeout:
|
case StatusTimeout:
|
||||||
return errors.New("login time out")
|
return ErrLoginTimeout
|
||||||
case StatusWait:
|
case StatusWait:
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
@ -307,7 +307,7 @@ func (b *Bot) MessageOnError(h func(err error)) {
|
|||||||
// DumpHotReloadStorage 写入HotReloadStorage
|
// DumpHotReloadStorage 写入HotReloadStorage
|
||||||
func (b *Bot) DumpHotReloadStorage() error {
|
func (b *Bot) DumpHotReloadStorage() error {
|
||||||
if b.HotReloadStorage == nil {
|
if b.HotReloadStorage == nil {
|
||||||
return errors.New("HotReloadStorage can be nil")
|
return errors.New("HotReloadStorage can not be nil")
|
||||||
}
|
}
|
||||||
cookies := b.Caller.Client.GetCookieMap()
|
cookies := b.Caller.Client.GetCookieMap()
|
||||||
item := HotReloadStorageItem{
|
item := HotReloadStorageItem{
|
||||||
|
@ -84,8 +84,8 @@ func (c *Caller) GetLoginInfo(body []byte) (*LoginInfo, error) {
|
|||||||
resp, err := c.Client.GetLoginInfo(path.String())
|
resp, err := c.Client.GetLoginInfo(path.String())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
uErr, ok := err.(*url.Error)
|
uErr, ok := err.(*url.Error)
|
||||||
if ok && (uErr.Err.Error() == missLocationHeader.Error()) {
|
if ok && (uErr.Err.Error() == ErrMissLocationHeader.Error()) {
|
||||||
return nil, loginForbiddenError
|
return nil, ErrLoginForbiddenError
|
||||||
}
|
}
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -116,9 +116,10 @@ const (
|
|||||||
|
|
||||||
// errors
|
// errors
|
||||||
var (
|
var (
|
||||||
noSuchUserFoundError = errors.New("no such user found")
|
ErrNoSuchUserFoundError = errors.New("no such user found")
|
||||||
missLocationHeader = errors.New("301 response missing Location header")
|
ErrMissLocationHeader = errors.New("301 response missing Location header")
|
||||||
loginForbiddenError = errors.New("login forbidden")
|
ErrLoginForbiddenError = errors.New("login forbidden")
|
||||||
|
ErrLoginTimeout = errors.New("login timeout")
|
||||||
)
|
)
|
||||||
|
|
||||||
// ALL 跟search函数搭配
|
// ALL 跟search函数搭配
|
||||||
|
53
items.go
53
items.go
@ -20,6 +20,28 @@ type LoginInfo struct {
|
|||||||
PassTicket string `xml:"pass_ticket"`
|
PassTicket string `xml:"pass_ticket"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// errors
|
||||||
|
const (
|
||||||
|
errParamError = "param error"
|
||||||
|
errTicketError = "ticket error"
|
||||||
|
errLoginEnvError = "login env error"
|
||||||
|
errLoginFailedWarn = "failed login warn"
|
||||||
|
errLoginFailedCheck = "failed login check"
|
||||||
|
errCookieInvalidError = "cookie invalid error"
|
||||||
|
errOptTooOften = "opt too often"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
ErrParamError = errors.New(errParamError)
|
||||||
|
ErrTicketError = errors.New(errTicketError)
|
||||||
|
ErrLoginEnvError = errors.New(errLoginEnvError)
|
||||||
|
ErrLoginFailedWarn = errors.New(errLoginFailedWarn)
|
||||||
|
ErrLoginFailedCheck = errors.New(errLoginFailedCheck)
|
||||||
|
ErrCookieInvalidError = errors.New(errCookieInvalidError)
|
||||||
|
ErrOptTooOften = errors.New(errOptTooOften)
|
||||||
|
ErrBaseResponseError error
|
||||||
|
)
|
||||||
|
|
||||||
func (l LoginInfo) Ok() bool {
|
func (l LoginInfo) Ok() bool {
|
||||||
return l.Ret == 0
|
return l.Ret == 0
|
||||||
}
|
}
|
||||||
@ -57,21 +79,22 @@ func getResponseErrorWithRetCode(code int) error {
|
|||||||
case 0:
|
case 0:
|
||||||
return nil
|
return nil
|
||||||
case 1:
|
case 1:
|
||||||
return errors.New("param error")
|
return ErrParamError
|
||||||
case -14:
|
case -14:
|
||||||
return errors.New("ticket error")
|
return ErrTicketError
|
||||||
case 1100:
|
case 1100:
|
||||||
return errors.New("not login warn")
|
return ErrLoginFailedWarn
|
||||||
case 1101:
|
case 1101:
|
||||||
return errors.New("not login check")
|
return ErrLoginFailedCheck
|
||||||
case 1102:
|
case 1102:
|
||||||
return errors.New("cookie invalid error")
|
return ErrCookieInvalidError
|
||||||
case 1203:
|
case 1203:
|
||||||
return errors.New("login env error")
|
return ErrLoginEnvError
|
||||||
case 1205:
|
case 1205:
|
||||||
return errors.New("opt too often")
|
return ErrOptTooOften
|
||||||
default:
|
default:
|
||||||
return fmt.Errorf("base response ret code %d", code)
|
ErrBaseResponseError = fmt.Errorf("base response ret code %d", code)
|
||||||
|
return ErrBaseResponseError
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -147,19 +170,19 @@ func (s *SyncCheckResponse) Error() string {
|
|||||||
case "0":
|
case "0":
|
||||||
return ""
|
return ""
|
||||||
case "1":
|
case "1":
|
||||||
return "param error"
|
return errParamError
|
||||||
case "-14":
|
case "-14":
|
||||||
return "ticker error"
|
return errTicketError
|
||||||
case "1100":
|
case "1100":
|
||||||
return "not login warn"
|
return errLoginFailedWarn
|
||||||
case "1101":
|
case "1101":
|
||||||
return "not login check"
|
return errLoginFailedCheck
|
||||||
case "1102":
|
case "1102":
|
||||||
return "cookie invalid error"
|
return errCookieInvalidError
|
||||||
case "1203":
|
case "1203":
|
||||||
return "login env error"
|
return errLoginEnvError
|
||||||
case "1205":
|
case "1205":
|
||||||
return "opt too often"
|
return errOptTooOften
|
||||||
default:
|
default:
|
||||||
return fmt.Sprintf("sync check response error code %s", s.RetCode)
|
return fmt.Sprintf("sync check response error code %s", s.RetCode)
|
||||||
}
|
}
|
||||||
|
@ -80,7 +80,7 @@ func (m *Message) SenderInGroup() (*User, error) {
|
|||||||
}
|
}
|
||||||
users := group.MemberList.SearchByUserName(1, m.senderInGroupUserName)
|
users := group.MemberList.SearchByUserName(1, m.senderInGroupUserName)
|
||||||
if users == nil {
|
if users == nil {
|
||||||
return nil, noSuchUserFoundError
|
return nil, ErrNoSuchUserFoundError
|
||||||
}
|
}
|
||||||
users.init(m.Bot.self)
|
users.init(m.Bot.self)
|
||||||
return users.First(), nil
|
return users.First(), nil
|
||||||
@ -94,14 +94,14 @@ func (m *Message) Receiver() (*User, error) {
|
|||||||
} else {
|
} else {
|
||||||
users := sender.MemberList.SearchByUserName(1, m.ToUserName)
|
users := sender.MemberList.SearchByUserName(1, m.ToUserName)
|
||||||
if users == nil {
|
if users == nil {
|
||||||
return nil, noSuchUserFoundError
|
return nil, ErrNoSuchUserFoundError
|
||||||
}
|
}
|
||||||
return users.First(), nil
|
return users.First(), nil
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
users := m.Bot.self.MemberList.SearchByUserName(1, m.ToUserName)
|
users := m.Bot.self.MemberList.SearchByUserName(1, m.ToUserName)
|
||||||
if users == nil {
|
if users == nil {
|
||||||
return nil, noSuchUserFoundError
|
return nil, ErrNoSuchUserFoundError
|
||||||
}
|
}
|
||||||
return users.First(), nil
|
return users.First(), nil
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user