我想对JSON主体中发送的额外密钥进行验证。
我的模型
type User struct {
gorm.Model
Username string `json:"username" validate:"required" gorm:"unique"`
Email string `json:"email" validate:"required,email" gorm:"unique"`
Password string `json:"password" validate:"required" `
}
现在,如果有人在请求体中发送一个id:111
,那么它将被保存到db中。
我使用的验证器是"www.example.com",但它不工作github.com/go-playground/validator/v10" but it's not working
validate := validator.New()
err := validate.Struct(user)
1条答案
按热度按时间sg2wtvxw1#
默认情况下,你使用的go-playground/validator包不会验证JSON主体中的未知字段,要只验证结构体中的字段,可以使用omitempty标记:
omitempty标记表示如果ID字段的值为零值(0表示int),则ID字段不会被封送到JSON中; validate:“-”标记表示该字段不会被验证。