代码如下:
var temp interface{}
err := json.Unmarshal(code, &temp)
m := temp.(map[string]interface{})
cmd_name := m["command"]
msgId := m["msg_id"]
fmt.Println("cmd_name: ", m["command"])
各位大神,帮忙看一下这段代码有没有什么问题,一个jsonDecode的过程报错了,错误是:
panic: interface conversion: interface {} is nil, not map[string]interface {}
有疑问加站长微信联系(非本文作者)

err := json.Unmarshal(code, &temp)
这里对 err 做个判断吧, 是不是解析出错了。恩,应该是的,我这边显示read到的数据是0,可能导致解析出错了,如果有err报出来的话,直接return掉应该就可以了
m, ok := temp.(map[string]interface{})
这里也应该加个ok判断转换是否成功,避免panic或者
m, _ := temp.(map[string]interface{})
不判断转换是否成功,但至少可以避免panic好的,非常感谢