package utils import ( "fmt" "pure/global" "strings" "time" ) const CAPTCHA = "captcha:" type RedisStore struct{} func (e RedisStore) Set(id, value string) { key := CAPTCHA + id value = strings.ToLower(value) err := global.MG_REDIS.Set(key, value, 2*time.Minute).Err() if err != nil { global.MG_LOG.Info(err.Error()) } } func (e RedisStore) Get(id string, clear bool) string { key := CAPTCHA + id val, err := global.MG_REDIS.Get(key).Result() if err != nil { fmt.Println(err) return "" } if clear { err := global.MG_REDIS.Del(key).Err() if err != nil { fmt.Println(err) return "" } } return val } func (e RedisStore) Verify(id, answer string, clear bool) bool { v := RedisStore{}.Get(id, clear) //fmt.Println("key:"+id+";value:"+v+";answer:"+answer) return v == answer }