在查看 redis slowlog 时查询出来的时 interface{}, 实际是个嵌套的切片, 断言起来非常麻烦。如下: 前三个元素时 int , 后面一个元素又是个切片,不能很好一次性的转类型,现在有没有处理的第三方包,或者其他什么较好的方法处理这种情况? [[3411585 1649892418 215157 ["del" "somekey"]...]
1
HiShan 2022-04-14 14:58:00 +08:00
反射 + 递归 ?
|
2
yleoer 2022-04-14 15:07:46 +08:00 1
|
4
yleoer 2022-04-14 15:16:02 +08:00
|
6
hzzhzzdogee 2022-04-14 18:08:24 +08:00
反射+递归 正解
|
7
rrfeng 2022-04-14 19:41:32 +08:00
它是固定格式啊,断言就够了。又不会出现某个位置类型突变的情况。
|
9
joesonw 2022-04-15 09:13:21 +08:00 via iPhone
返回[]interface{}是因为可能有空值,你直接 redis-cli 试试就知道了。返回[]interface{}的命令是有可能中间有 nil 的
|