gin-binding参数效验
生活随笔
收集整理的這篇文章主要介紹了
gin-binding参数效验
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、參考
GitHub:go-playground / validator
參考博文:gin-binding — go-playground/validator 的常用關鍵字
2、介紹
Gin框架默認使用 validator(binding);其它框架可以引入使用;
3、詳情
| required | 屬性,結構,文件 | 標示必須存在(0時驗證失敗) | validate:"required" |
| omitempty | 屬性,結構,文件 | omitempty要么不傳,傳的話就要大于5 | validate:"omitempty,gt=5" |
| len | 字符串,數組,時間間隔,文件長度 | 標示長度,size,間隔,大小 | validate:"len=1" |
| min | 字符串,數字,數組,時間間隔 | 標示最小 | validate:"min=1" |
| max | 字符串,數字,數組,時間 | 標示最大 | validate:"max=7" |
| eq | 字符串,數組,時間間隔,布爾值 | 標示相等,正對數組是長度 | validate:"eq=3" |
| ne | 字符串,數組,時間間隔,布爾值 | 標示不相等 | validate:"ne=" |
| lt | 字符串,數字,數組,時間 | 小于 | validate:"lt=3" |
| lte | 字符串,數字,數組,時間 | 小于等于 | validate:"lte=3" |
| gt | 字符串,數字,數組,時間 | 大于 | validate:"gt=3" |
| gte | 字符串,數字,數組,時間 | 大于等于 | validate:"gte=3" |
| eqfield | 同級屬性 | 等于 | validate:"eqfield=MaxString" |
| eqcsfield | 內部屬性 | 等于 | validate:"eqcsfield=Inner.EqCSFieldString" |
| necsfield | 內部屬性 | 不等于 | validate:"necsfield=Inner.NeCSFieldString" |
| gtcsfield | 內部屬性 | 大于 | validate:"gtcsfield=Inner.GtCSFieldString" |
| ltcsfield | 內部屬性 | 小于 | validate:"ltcsfield=Inner.LtCSFieldString" |
| ltecsfield | 內部屬性 | 小于等于 | validate:"ltecsfield=Inner.LteCSFieldString" |
| nefield | 同級屬性 | 不等于 | validate:"nefield=EqFieldString" |
| gtfield | 同級屬性 | 大于 | validate:"gtfield=MaxString" |
| gtefield | 同級屬性 | 大于等于 | validate:"gtefield=MaxString" |
| ltfield | 同級屬性 | 小于 | validate:"ltfield=MaxString" |
| ltefield | 同級屬性 | 小于等于 | validate:"ltefield=MaxString" |
| alpha | 字符串 | "^[a-zA-Z]+$" | validate:"alpha" |
| alphanum | 字符串 | "^[a-zA-Z0-9]+$" | validate:"alphanum" |
| numeric | 字符串 | "^[-+]?[0-9]+(?:\\.[0-9]+)?$" | validate:"numeric" |
| number | 字符串 | "^[0-9]+$" | validate:"number" |
| hexadecimal | 字符串 | "^(0[xX])?[0-9a-fA-F]+$" | validate:"hexadecimal" |
| hexcolor | 字符串 | "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$" | validate:"hexcolor" |
| rgb | 字符串 | 復雜正則不展示 | validate:"rgb" |
| rgba | 字符串 | 復雜正則不展示 | |
| hsl | 字符串 | 復雜正則不展示 | |
| hsla | 字符串 | 復雜正則不展示 | |
| 字符串 | 復雜正則不展示 | validate:"email" | |
| url | 字符串 | url規則 | validate:"url" |
| uri | 字符串 | uri規則 | validate:"uri" |
| base64 | 字符串 | "^(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+\\/]{3}=|[A-|Za-z0-9+\\/]{4})$" | validate:"base64" |
| contains | 字符串 | 包含 | validate:"contains=purpose" |
| containsany | 字符串 | 包含任意一個 | validate:"containsany=!@#$" |
| excludes | 字符串 | 不包含 | validate:"excludes=text" |
| excludesall | 字符串 | 不包含任意一個 | validate:"excludesall=!@#$" |
| excludesrune | 字符串 | 不包含某個rune類型 | validate:"excludesrune=?" |
| isbn | 字符串 | 兩個isbn | validate:"isbn" |
| isbn10 | 字符串 | "^(?:[0-9]{9}X|[0-9]{10})$" | validate:"isbn10" |
| isbn13 | 字符串 | ^(?:(?:97(?:8|9))[0-9]{10})$" | validate:"isbn13" |
| uuid | 字符串 | "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" | validate:"uuid" |
| uuid3 | 字符串 | "^[0-9a-f]{8}-[0-9a-f]{4}-3[0-9a-f]{3}-[0-9a-f]{4}-[0-9a-f]{12}$" | validate:"uuid3" |
| uuid4 | 字符串 | "^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$" | validate:"uuid4" |
| uuid5 | 字符串 | "^[0-9a-f]{8}-[0-9a-f]{4}-5[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$" | validate:"uuid5" |
| ascii | 字符串 | "^[\x00-\x7F]*$" | validate:"ascii" |
| printascii | 字符串 | ^[\x20-\x7E]*$" | validate:"printascii" |
| multibyte | 字符串 | "[^\x00-\x7F]" | validate:"multibyte" |
| datauri | 字符串 | ^data:((?:\w+\/(?:([^;]|;[^;]).)+)?) | validate:"datauri" |
| latitude | 字符串 | "^[-+]?([1-8]?\\d(\\.\\d+)?|90(\\.0+)?)$" | validate:"latitude" |
| longitude | 字符串 | "^[-+]?(180(\\.0+)?|((1[0-7]\\d)|([1-9]?\\d))(\\.\\d+)?)$" | validate:"longitude" |
| ssn | 字符串 | ^[0-9]{3}[ -]?(0[1-9]|[1-9][0-9])[ -]?([1-9][0-9]{3}|[0-9][1-9][0-9]{2}|[0-9]{2}[1-9][0-9]|[0-9]{3}[1-9])$ | validate:"ssn" |
| ip | 字符串 | ip規則 | validate:"ip" |
| ipv4 | 字符串 | ipv4規則 | validate:"ipv4" |
| ipv6 | 字符串 | ipv6規則 | validate:"ipv6" |
| cidr | 字符串 | ip規則 | validate:"cidr" |
| cidrv4 | 字符串 | ipv4規則 | validate:"cidrv4" |
| cidrv6 | 字符串 | ipv6規則 | validate:"cidrv6" |
| tcp_addr | 字符串 | 對應規則按需驗證 | validate:"tcp_addr" |
| tcp4_addr | 字符串 | 對應規則按需驗證 | validate:"tcp4_addr" |
| tcp6_addr | 字符串 | 對應規則按需驗證 | validate:"tcp6_addr" |
| udp_addr | 字符串 | 對應規則按需驗證 | validate:"udp_addr" |
| udp4_addr | 字符串 | 對應規則按需驗證 | validate:"udp4_addr" |
| udp6_addr | 字符串 | 對應規則按需驗證 | validate:"udp6_addr" |
| ip_addr | 字符串 | 對應規則按需驗證 | validate:"ip_addr" |
| ip4_addr | 字符串 | 對應規則按需驗證 | validate:"ip4_addr" |
| ip6_addr | 字符串 | 對應規則按需驗證 | validate:"ip6_addr" |
| unix_addr | 字符串 | 對應規則按需驗證 | validate:"unix_addr" |
| mac | 字符串 | 對應規則按需驗證 | validate:"mac" |
| iscolor | 字符串 | 顏色校驗所有顏色規則 | validate:"iscolor" |
| oneof | OneOfString | 對應規則按需驗證 | validate:"oneof=red green" |
| oneof | OneOfInt | 對應規則按需驗證 | validate:"oneof=5 63" |
| unique | UniqueSlice | 對應規則按需驗證 | validate:"unique" |
| unique | UniqueArray | 對應規則按需驗證 | validate:"unique" |
| unique | UniqueMap | 對應規則按需驗證 | validate:"unique" |
| json | JSONString | 對應規則按需驗證 | validate:"json" |
| lowercase | LowercaseString | 對應規則按需驗證 | validate:"lowercase" |
| uppercase | UppercaseString | 對應規則按需驗證 | validate:"uppercase" |
| datetime | Datetime | 對應規則按需驗證 | validate:"datetime=2006-01-02" |
總結
以上是生活随笔為你收集整理的gin-binding参数效验的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: QML Qt.binding
- 下一篇: SpringBoot 整合ActiveM