在使用beego 的redis时需要单独
go get github.com/garyburd/redigo/redis
然后引入
_ "github.com/astaxie/beego/cache/redis"
与
"github.com/astaxie/beego/cache"
使用
redis, err := cache.NewCache("redis", `{"key":"user","conn":":6379","dbNum":"0"}`)
if err == nil {
redis.Put("uid", 1, 10*time.Second) // 这里要吐槽一下 (为什么不能直接使用 int型来设置过期时间)
get := redis.Get("uid") // 在这里卡了一天,作为小白的我,这里取出来的数据是 [23 12 45] 很奇怪为什么会是这样子的,然后不会转换 ,还是在https://studygolang.com/topics/4411这篇里找到怎么解决就是强制转换类型,string(),又出现一个问题,强制转换需要断言因为返回的是 interface 类型的,(暂时不清楚为什么)
fmt.Println(string(get.([]byte))) // 对就是这样,就可以把存进去的数据原样返回
fmt.Printf("%T\n", get)
}
PS:这个是写给自己看的,也希望有跟我遇见一样的小白看到,同时希望有大神看到可以不吝啬的告知这个知识盲区,或者等以后明白了,回来完善一下。。。