本文整理汇总了Golang中github.com/ginuerzh/sports/models.RedisLogger.LogRegister方法的典型用法代码示例。如果您正苦于以下问题:Golang RedisLogger.LogRegister方法的具体用法?Golang RedisLogger.LogRegister怎么用?Golang RedisLogger.LogRegister使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/ginuerzh/sports/models.RedisLogger
的用法示例。
在下文中一共展示了RedisLogger.LogRegister方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: regHandlerV2
func regHandlerV2(request *http.Request, resp http.ResponseWriter,
redis *models.RedisLogger, form regFormV2) {
exists, err := models.CheckUserExists(form.Id, form.Type)
if err != nil {
writeResponse(request.RequestURI, resp,
nil, errors.NewError(errors.DbError))
return
}
if exists {
writeResponse(request.RequestURI, resp,
nil, errors.NewError(errors.UserExistError))
return
}
dbw, err := getNewWallet()
if err != nil {
writeResponse(request.RequestURI, resp,
nil, errors.NewError(errors.DbError, "创建钱包失败"))
return
}
user := &models.Account{
Role: form.Type,
Password: Md5(form.Password),
Nickname: form.Nickname,
Profile: form.Profile,
Gender: form.Gender,
Birth: form.Birthday,
Wallet: *dbw,
RegTime: time.Now(),
}
switch form.Type {
case models.AccountPhone:
user.Phone = form.Id
case models.AccountWeibo:
user.Weibo = form.Id
case models.AccountEmail:
fallthrough
default:
user.Email = form.Id
}
if err := user.Save(); err != nil {
writeResponse(request.RequestURI, resp, nil, err)
return
}
token := Uuid() + "-" + strconv.FormatInt(time.Now().AddDate(0, 0, 30).Unix(), 10)
data := map[string]string{"access_token": token, "userid": user.Id}
writeResponse(request.RequestURI, resp, data, nil)
redis.LogRegister(user.Id, form.Type)
redis.SetOnlineUser(token, user.Id)
// ws push
//regNotice(user.Id, redis)
}
示例2: getUserId
/*
func (this loginForm) getUserId() string {
return this.Userid
}
*/
func weiboLogin(uid, password string, redis *models.RedisLogger) (bool, *models.Account, error) {
user := &models.Account{}
exists, err := user.FindByWeibo(strings.ToLower(uid))
if err != nil {
return false, nil, err
}
p := Md5(password)
registered := user.RegTime.Unix() > 0
if registered {
if user.Password != p {
user.SetPassword(p)
}
return false, user, nil
}
weiboUser, err := GetWeiboUserInfo(uid, password)
if err != nil {
return false, nil, err
}
user.Nickname = weiboUser.ScreenName
if find, _ := user.Exists("nickname"); find {
user.Nickname = "wb_" + user.Nickname
}
user.Password = p
if !strings.HasPrefix(weiboUser.Gender, "f") {
user.Gender = "male"
} else {
user.Gender = "female"
}
user.Weibo = uid
user.Url = weiboUser.Url
user.Profile = weiboUser.Avatar
//user.Addr = &models.Address{Desc: weiboUser.Location}
user.About = weiboUser.Description
user.Role = models.AccountWeibo
user.RegTime = time.Now()
dbw, err := getNewWallet()
if err != nil {
return true, nil, err
}
user.Wallet = *dbw
if !exists {
if err := user.Save(); err != nil {
return true, nil, err
}
}
redis.LogRegister(user.Id, user.Role)
// ws push
regNotice(user.Id, redis)
return true, user, nil
}
示例3: registerHandler
func registerHandler(request *http.Request, resp http.ResponseWriter, redis *models.RedisLogger, form userRegForm) {
user := &models.Account{}
t := ""
if phone, _ := strconv.ParseUint(form.Email, 10, 64); phone > 0 {
user.Phone = form.Email
t = models.AccountPhone
} else {
user.Email = strings.ToLower(form.Email)
t = models.AccountEmail
}
if exists, _ := user.Exists(t); exists {
writeResponse(request.RequestURI, resp, nil, errors.NewError(errors.UserExistError))
return
}
//user.Nickname = form.Nickname
user.Password = Md5(form.Password)
user.Role = t
user.RegTime = time.Now()
dbw, err := getNewWallet()
if err != nil {
writeResponse(request.RequestURI, resp, nil, errors.NewError(errors.DbError, "wallet: "+err.Error()))
return
}
user.Wallet = *dbw
if err := user.Save(); err != nil {
writeResponse(request.RequestURI, resp, nil, err)
} else {
token := Uuid() + "-" + strconv.FormatInt(time.Now().AddDate(0, 0, 30).Unix(), 10)
data := map[string]string{"access_token": token, "userid": user.Id}
writeResponse(request.RequestURI, resp, data, nil)
redis.LogRegister(user.Id, t)
redis.SetOnlineUser(token, user.Id)
// ws push
regNotice(user.Id, redis)
}
}