go语言使用josn.Unmarshal报错:unexpected end of JSON input

这是因为 json.Unmarshal() 的第一个参数为【】的时候,json包会认为这不是一个正确的json包,因此会报错unexpected end of JSON input
错误示例:
func test6() {
var respBytes = []byte("")
var jsonData []interface{}
err := json.Unmarshal(respBytes, &jsonData)
if err != nil {
fmt.Println(err)
}
fmt.Println(jsonData)
}
解决办法: 在使用json.Unmarshal时候,我们先对respBytes进行判断
if len(respBytes) == 0{
return nil
}

posted @ 2020-08-12 16:49  尼古拉斯胖狗  阅读(11527)  评论(0)    收藏  举报