我正在使用gin-gonic创建我的第一个Go剩余API服务器。
我的User
结构如下
type User struct {
FirstName string `json: "first_name"`
}
我在代码中定义了以下路线
route.POST("/test", func(c *gin.Context) {
var user request_parameters.User
c.BindJSON(&user)
//some code here
c.JSON(http.StatusOK, token)
})
我的POST
请求正文如下
{
"first_name" : "James Bond"
}
在这种情况下,user.FirstName
的值为""
。但是当我将请求正文发布为
{
"firstName" : "James Bond"
}
user.FirstName
的值为"James Bond"
。
如何将snake case变量"first_name"
从JSON请求主体映射到结构中的相应变量?我想念什么吗?
答案 0 :(得分:2)
您有错字(json: "first_name"
中的空格)。
应该是:
type User struct {
FirstName string `json:"first_name"`
}