// member auth,command like 'MAUTH:jarrysix#3234234242342342' func memberAuth(s *nc.SocketServer, id *nc.Client, param string) ([]byte, error) { var err error arr := strings.Split(param, "#") if len(arr) == 2 { f := func() (int, error) { memberId, _ := strconv.Atoi(arr[0]) authOk := util.CompareMemberApiToken(gof.CurrentApp.Storage(), memberId, arr[1]) if !authOk { return memberId, errors.New("auth fail") } return memberId, nil } if err = s.UAuth(id.Conn, f); err == nil { //验证成功 return []byte("ok"), nil } } return nil, err }