正如标题所说,我正在编写一个 API,采用客户端发布的任何 json 数据。
有没有办法直接获取map[string]interface{}类似的类型数据bson.M?
我尝试过简单地查找 的属性gin.Context,如果我错过了某些内容,它们中的任何一个都会有帮助吗?
[]bytes直接从请求体中 获取json.Unmarshal()转换[]bytes为类似 JSON 的数据:map[string]interface{}func GetJsonData(c *gin.Context) {
data, _ := ioutil.ReadAll(c.Request.Body)
fmt.Println(string(data))
var jsonData bson.M // map[string]interface{}
data, _ := ioutil.ReadAll(c.Request.Body)
if e := json.Unmarshal(data, &jsonData); e != nil {
c.JSON(http.StatusBadRequest, gin.H{"msg": e.Error()})
return
}
c.JSON(http.StatusOK, jsonData)
}
Run Code Online (Sandbox Code Playgroud)