- [#] 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)
|
||||
}
|
||||
case StatusTimeout:
|
||||
return errors.New("login time out")
|
||||
return ErrLoginTimeout
|
||||
case StatusWait:
|
||||
continue
|
||||
}
|
||||
@ -307,7 +307,7 @@ func (b *Bot) MessageOnError(h func(err error)) {
|
||||
// DumpHotReloadStorage 写入HotReloadStorage
|
||||
func (b *Bot) DumpHotReloadStorage() error {
|
||||
if b.HotReloadStorage == nil {
|
||||
return errors.New("HotReloadStorage can be nil")
|
||||
return errors.New("HotReloadStorage can not be nil")
|
||||
}
|
||||
cookies := b.Caller.Client.GetCookieMap()
|
||||
item := HotReloadStorageItem{
|
||||
|
@ -84,8 +84,8 @@ func (c *Caller) GetLoginInfo(body []byte) (*LoginInfo, error) {
|
||||
resp, err := c.Client.GetLoginInfo(path.String())
|
||||
if err != nil {
|
||||
uErr, ok := err.(*url.Error)
|
||||
if ok && (uErr.Err.Error() == missLocationHeader.Error()) {
|
||||
return nil, loginForbiddenError
|
||||
if ok && (uErr.Err.Error() == ErrMissLocationHeader.Error()) {
|
||||
return nil, ErrLoginForbiddenError
|
||||
}
|
||||
return nil, err
|
||||
}
|
||||
|
@ -116,9 +116,10 @@ const (
|
||||
|
||||
// errors
|
||||
var (
|
||||
noSuchUserFoundError = errors.New("no such user found")
|
||||
missLocationHeader = errors.New("301 response missing Location header")
|
||||
loginForbiddenError = errors.New("login forbidden")
|
||||
ErrNoSuchUserFoundError = errors.New("no such user found")
|
||||
ErrMissLocationHeader = errors.New("301 response missing Location header")
|
||||
ErrLoginForbiddenError = errors.New("login forbidden")
|
||||
ErrLoginTimeout = errors.New("login timeout")
|
||||
)
|
||||
|
||||
// ALL 跟search函数搭配
|
||||
|
53
items.go
53
items.go
@ -20,6 +20,28 @@ type LoginInfo struct {
|
||||
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 {
|
||||
return l.Ret == 0
|
||||
}
|
||||
@ -57,21 +79,22 @@ func getResponseErrorWithRetCode(code int) error {
|
||||
case 0:
|
||||
return nil
|
||||
case 1:
|
||||
return errors.New("param error")
|
||||
return ErrParamError
|
||||
case -14:
|
||||
return errors.New("ticket error")
|
||||
return ErrTicketError
|
||||
case 1100:
|
||||
return errors.New("not login warn")
|
||||
return ErrLoginFailedWarn
|
||||
case 1101:
|
||||
return errors.New("not login check")
|
||||
return ErrLoginFailedCheck
|
||||
case 1102:
|
||||
return errors.New("cookie invalid error")
|
||||
return ErrCookieInvalidError
|
||||
case 1203:
|
||||
return errors.New("login env error")
|
||||
return ErrLoginEnvError
|
||||
case 1205:
|
||||
return errors.New("opt too often")
|
||||
return ErrOptTooOften
|
||||
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":
|
||||
return ""
|
||||
case "1":
|
||||
return "param error"
|
||||
return errParamError
|
||||
case "-14":
|
||||
return "ticker error"
|
||||
return errTicketError
|
||||
case "1100":
|
||||
return "not login warn"
|
||||
return errLoginFailedWarn
|
||||
case "1101":
|
||||
return "not login check"
|
||||
return errLoginFailedCheck
|
||||
case "1102":
|
||||
return "cookie invalid error"
|
||||
return errCookieInvalidError
|
||||
case "1203":
|
||||
return "login env error"
|
||||
return errLoginEnvError
|
||||
case "1205":
|
||||
return "opt too often"
|
||||
return errOptTooOften
|
||||
default:
|
||||
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)
|
||||
if users == nil {
|
||||
return nil, noSuchUserFoundError
|
||||
return nil, ErrNoSuchUserFoundError
|
||||
}
|
||||
users.init(m.Bot.self)
|
||||
return users.First(), nil
|
||||
@ -94,14 +94,14 @@ func (m *Message) Receiver() (*User, error) {
|
||||
} else {
|
||||
users := sender.MemberList.SearchByUserName(1, m.ToUserName)
|
||||
if users == nil {
|
||||
return nil, noSuchUserFoundError
|
||||
return nil, ErrNoSuchUserFoundError
|
||||
}
|
||||
return users.First(), nil
|
||||
}
|
||||
} else {
|
||||
users := m.Bot.self.MemberList.SearchByUserName(1, m.ToUserName)
|
||||
if users == nil {
|
||||
return nil, noSuchUserFoundError
|
||||
return nil, ErrNoSuchUserFoundError
|
||||
}
|
||||
return users.First(), nil
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user