beego 和 redis
beego 自带 cache :
github.com/beego/beego/v2/client/cache
github.com/beego/beego/v2/client/cache/redis
最大的坑:
// associate with config key.
func (rc *Cache) associate(originKey interface{}) string {
return fmt.Sprintf("%s:%s", rc.key, originKey)
}if _, ok := cf["key"]; !ok {
cf["key"] = DefaultKey
}必须是 有一个前缀的key, 比如key为abc 你操作的可以 key,变成 abc:key 如果这个rediskey 空,就是 :key 前面有 : 结果就是和已有项目无法兼容!!!!!
所以最好用
"github.com/go-redis/redis"
func (o *ObjectController) Testredis() {
redisdb := redis.NewClient(&redis.Options{
Addr: "127.0.0.1:6379", // use default Addr
Password: "xxxx", // no password set
DB: 0, // use default DB
})
_, err := redisdb.Ping().Result()
if err != nil {
o.error(err.Error())
}
val, err := redisdb.HGet("clients","984969").Result()
if err != nil {
o.error(err.Error())
}
var data interface{}
json.Unmarshal([]byte(val), &data)
ret:=make(map[string]interface{})
ret["success"]=1
ret["data"]=data
o.Data["json"] = ret
o.ServeJSON()
}
版权声明本文仅代表作者观点,不代表本站立场。本文系作者授权发表,未经许可,不得转载。图文来源网络,侵权删!