当使用Golang的json.Unmarshal()
函数解组一个json字符串时,我总是将字符串解组为map[string]interface{}
- * 我不确定是否有更好的方法来解码json。
进入正题:
有时json的未编组类型是nil
,而不是string
(或int
等)。这总是会引发恐慌,说:
接口转换:接口为nil,不是int
如何避免这种恐慌或检查接口的类型是否为nil
?
示例:
下面是我的问题的一个例子:https://play.golang.org/p/0ATzXBbdoS
1条答案
按热度按时间uoifb46i1#
检查密钥是否存在,而不是让它恐慌。
字符串
此外,如果你知道你的json是什么样子的话,这还远远不是最佳的。正如文档中所指定的,你可以直接将它解组到一个结构体中:
型