gin当请求对象为数组时,binding不生效问题解决

November 24, 2022

gin当请求对象为数组时,binding不生效问题解决。

请求结构体如下

// 学生结构
type StudentParam struct {
    StudentID    uint64 `json:"student_id" binding:"required"` // 请求时此参数验证并未生效
    StudentName  int    `json:"type" binding:"required"`       // 请求时此参数验证并未生效
}
// 批量创建学生
type CreateStudentsParam struct {
    Students  []StudentParam  `json:"students" binding:"required"`
}

var param CreateStudentsParam 
err := c.ShouldBindJSON(&param)

解决方法

type CreateStudentsParam struct {
    Students  []StudentParam  `json:"students" binding:"dive"` // 将binding:"required"改为binding:"dive"
}

参考

https://www.utf8.hk/archives/go-gin-binding-error.html

Go

IARNO

服务端开发

gin proxy代理

Django 项目实践01