如果解析Json时,把Json解析到map[string]interface ,那值所对应的真正类型是下面这样的
bool,for JsON booleans
float64,for JsON numbers
string,for JsON strings
[]interface{},for JsON arrays
map[string]interface{},for JsON objects
nil for JsON null
Json中的数值类型,会是float64类型
Json对象会解析成,map[string]interface
代码可以这样写:
func send(w http.ResponseWriter,r *http.Request){ w.header().Set("content-type",text/Json;charset=utf-8;") var sendData map[string]interface{} bodyBytes,err:=IoUtil.ReadAll(r.Body) if err!=nil{ msg,_ := Json.Marshal(tools.JsonResult{Code: 400,Msg: *** 作失败,"+err.Error()}) w.Write(msg) return } err = Json.Unmarshal(bodyBytes,&sendData) } smtpServer:=sendData[smtp"].(string) smtpFrom:=sendData[from) msg,_ := Json.Marshal(tools.JsonResult{Code: 200,Msg: smtpServer+smtpFrom}) w.Write(msg)}
总结
以上是内存溢出为你收集整理的[Go]当把json解析到interface{}时 , 对应的真正类型全部内容,希望文章能够帮你解决[Go]当把json解析到interface{}时 , 对应的真正类型所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)