问题
如何使用Golang解析Post请求中的Json字符串。
解决
首先,定义对应的消息结构。
比如:
type recordConfig struct {
StreamPath string `json:"streamPath"`
Append bool `json:"append"`
Protocol string `json:"protocol"`
Url string `json:"url"`
}
其次,读取对应请求的body信息。
body, err := ioutil.ReadAll(r.Body)
defer r.Body.Close()
if err != nil {
return
}
最后,解析Json字符串为Json对象。注意:这里有两种方式,都是非常方便的,具体方式请自选。
其一、利用Unmarshal()方法:
var conf recordConfig
err := json.Unmarshal(body, &conf)
其二、利用NewDecoder组合方法:
var conf recordConfig
err := json.NewDecoder(r.Body).Decode(&conf)
至此,我们就可以使用 conf.StreamPath 获取流路径了。