求助:解析Jason键值对值为空时报错:Json UnmarshalError: invalid character '}' looking for beginning of value

jimyokl · · 1569 次点击
"userport":}改为"userport":""}
#1
更多评论
谢谢 ququ1002 提供思路。 试了,报这个错 request info:{"serialno":"10001","command":"UserQueryByNATIP","natip":"20.1.18.97","userport":""} QueryByNATIP::reqparse Json UnmarshalError: json: cannot unmarshal string into Go value of type int 估计是定义问题,还有转换一下空值的定义: // request packet struct for query by natip and port type QueryByNATIP struct { Serialno string `json:"serialno"` Command string `json:"command"` Natip string `json:"natip"` Userport int `json:"userport"` }
#2
struct 内部的 int 类型的 field,默认是 0,你必须要给 userport 一个默认值,否则无法 Unmarshal。 还有一个思路,就是给后面的 tag 加个属性,json:-,解析的时候跳过。
#3