package
0.0.0-20191223014748-c467e97456c9
Repository: https://github.com/seerx/goql.git
Documentation: pkg.go.dev

# README

参数验证

该包实现了对提交参数的简单验证功能,包括整数和浮点型的范围、字符串的长度、字符串正则表达式验证。
该包不提供 graphql 的!表达的 require 验证。但是提供了 require.Requirement 参数来提供类似的功能。需要的时候,只要在Resolver函数中声明参数或承载结构中 定义成员变量即可。

验证表达式

  1. 整数
    1. limit=n<$v
      大于 n
    2. limit=n<=$v
      大于等于 n
    3. limit=$v<n
      小于 n
    4. limit=$v<=n
      小于等于 n
    5. limit=n<$v<m
      小于m大于n
    6. limit=n<=$v<=m
      小于等于m大于等于n
  2. 浮点型
    1. limit=n<$v
      大于 n
    2. limit=n<=$v
      大于等于 n
    3. limit=$v<n
      小于 n
    4. limit=$v<=n
      小于等于
    5. limit=n<$v<m
      小于m大于n
    6. limit=n<=$v<=m
      小于等于m大于等于n
  3. 字符串长度
    1. limit=n<$v
      大于 n
    2. limit=n<=$v
      大于等于 n
    3. limit=$v<n
      小于 n
    4. limit=$v<=n
      小于等于 n
    5. limit=n<$v<m
      小于m大于n
    6. limit=n<=$v<=m
      小于等于m大于等于n
  4. 字符串正则表达式
    1. regexp=正则表达式
      切记:正则表达式中的转义符 '\' 要写成 '\\'
  5. 错误提示
    1. error=说明文本
      设置后,如果验证失败将使用 error 的内容作为提示内容,否则自动组织,参见代码

$v 代表了数值或字符串长度,所有验证大小的都使用 < 或者 <= 设定。

require.Requirement

必填参数由 require.Requirement 来决定。只要在 Resolver 函数参数中添加 *require.Requirement 即可以 使用。需要注意的是 Requirement.Requires 函数接收的名称是 json Tag,如果没有定义 json Tag 则与成员变量名称一致; 另外,Requirement.Requires 函数的参数名称是自动解除最外层参数 in 的。
具体的,还要自己去实验一下。

# Structs

No description provided by the author
No description provided by the author
Param 参数.