30 lines
546 B
Go
30 lines
546 B
Go
package service
|
|
|
|
import (
|
|
"encoding/json"
|
|
"yintai-api/app/common/cache"
|
|
err2 "yintai-api/app/common/err"
|
|
"yintai-api/app/common/model"
|
|
)
|
|
|
|
type Token struct{}
|
|
|
|
func NewToken() *Token {
|
|
return &Token{}
|
|
}
|
|
|
|
func (t *Token) UserInfo(token string) *model.UserWithRole {
|
|
key := cache.NewKeys().User() + token
|
|
tx := cache.GetRedis().Get(key)
|
|
if tx.Val() == "" {
|
|
err2.TokenErr()
|
|
}
|
|
|
|
user := new(model.UserWithRole)
|
|
if err := json.Unmarshal([]byte(tx.Val()), user); err != nil {
|
|
err2.TokenErr("parse user info error", err)
|
|
}
|
|
|
|
return user
|
|
}
|