我从 gin 文档中了解到,您可以将 json 绑定到类似的结构
type Login struct {
User string `form:"user" json:"user" binding:"required"`
Password string `form:"password" json:"password" binding:"required"`
}
func main() {
router := gin.Default()
// Example for binding JSON ({"user": "manu", "password": "123"})
router.POST("/loginJSON", func(c *gin.Context) {
var json Login
if c.BindJSON(&json) == nil {
if json.User == "manu" && json.Password == "123" {
c.JSON(http.StatusOK, gin.H{"status": "you are logged in"})
} else {
c.JSON(http.StatusUnauthorized, gin.H{"status": "unauthorized"})
}
}
})
}
您总是必须构建一个结构来绑定 JSON。
但是如果有一个很复杂的 JSON 数据,我只获取其中的一部分,创建一个复杂的 struct 是一个很大的负担。可以避免id直接解析吗?