Golang报错:Cannot convert expression of type interface{} to type []byte
在使用golang实现后端登录逻辑的时候,碰到下面的问题:Cannot convert expression of type interface{} to type []byte
首先介绍下问题出现的场景:使用Redis存储用户登录信息,第三方包使用的是redigo
问题原因:由于从Redis里 取出的数据为interface{}类型,需要先进行类型转换后,才能做后续处理
代码如下:
res, err := redis.String(coon.Do("HGet", "users", id)) //这里如果不进行redis.String()操作,并且这里只能使用redis的函数
user = &User{}
err = json.Unmarshal([]byte(res), user) //则这里就会报错