验证器 说明 示例
- 忽略字段 binding:"-"
required 必填字段 binding:“required”
min 最小长度 binding:“min=10”
max 最大长度 binding:“max=10”
| 或 binding:"rgb
structonly 如果有嵌套,可以决定只验证结构体上的 binding:“structonly”
omitempty 省略空,如果为空,则不会继续验证该字段上其他的规则,只有不为空才会继续验证其他的
len 长度 binding:“len=10”
eq 等于 binding:“eq=10”
ne 不等于 binding:“ne=10”
gt 大于 binding:“gt=10”
gte 大于等于 binding:“gte=10”
lt 小于 binding:“lt=10”
lte 小于等于 binding:“lte=10”
eqfield 等于其他字段的值 Password string binding:"eqfield=ConfirmPassword"
nefield 不等于其他字段的值
eqcsfield 类似eqfield,它会验证相对于顶层结构提供的字段 binding:"eqcsfield = InnerStructField.Field
necsfield
gtfield 大于其他字段的值
gtefield
gtcsfield
gtecsfield
ltfield 小于其他字段的值
ltefield
ltcsfield
ltecsfield
alpha 字符串值仅包含字母字符
alphanum 字符串值仅包含字母数字字符
numeric 字符串值包含基本数字值。基本不包括指数等…
hexadecimal 字符串值包含有效的十六进制
hexcolor 验证字符串值包含有效的十六进制颜色, 包括井号(#)
rgb 字符串值包含有效的rgb颜色
rgba 字符串值包含有效的rgba颜色
HSL 字符串值包含有效的hsl颜色
hsla 字符串值包含有效的hsla颜色
email 字符串值包含有效的电子邮件
url 字符串值包含有效的网址,必须包含http://等
uri 字符串值包含有效的uri. 它将接受golang请求uri接受的任何uri
base64 字符串值包含有效的base64值
contains 字符串值包含子字符串值, contains=@
containsany 包含所有,containsany =!@#?
containsrune 字符串值包含提供的符号 containsrune = @
excludes 字符串值不包含子字符串值,excludes = @
excludeall 排除所有
excluderune 字符串值不包含提供的符号,excluderune = @
isbn 国际标准书号,验证字符串值包含有效的isbn10或isbn13值
isbn10 国际标准书号10, 验证字符串值包含有效的isbn10值
isbn13 国际标准书号13, 字符串值包含有效的isbn13值
uuid 字符串值包含有效的UUID
uuid3 字符串值包含有效的版本3 UUID
uuid4 字符串值包含有效的版本5 UUID
uuid5 字符串值包含有效的版本5 UUID
ascii 字符串值仅包含ASCII字符. 注意:如果字符串为空, 则验证为true
asciiprint 字符串值仅包含可打印的ASCII字符. 注意: 如果字符串为空,则验证为true
multibyte 字符串值包含一个或多个多字节字符。注意:如果字符串为空,则验证为true
datauri 字符串值包含有效的DataURI。注意:这还将验证数据部分是有效的base64
latitude 纬度,字符串值包含有效的纬度
longitude 经度,字符串值包含有效的经度
ssn 字符串值包含有效的美国社会安全号码
ip 字符串值包含有效的IP地址
ipv4 字符串值包含有效的v4 IP地址
ipv6 字符串值包含有效的v6 IP地址
cidr 字符串值包含有效的CIDR地址
cidrv4 字符串值包含有效的CIDR地址
cidrv6 字符串值包含有效的v6 CIDR地址
tcp_addr 字符串值包含有效的可解析TCP地址
dive 嵌套验证
标签:10,包含,验证,binding,有效,json,字符串,gin
From: https://www.cnblogs.com/fanqieyuanzi/p/18514145