https://pypi.org/project/validator.py/

校验参数必要性

from validator import Required, In, InstanceOf, Length, validate, Range rules = {
  # 1、Required 必要
  # 2、长度1-255
  # 3、类型string
  'name': [Required, Length(1, 255), InstanceOf(str)] } data = {'name': ''}
chk = validate(rules, data)
print(chk)
# ValidationResult(valid=False, errors={'a': ['must be between 1 and 255 elements in Length']})
选填
# 非 Required 即可选
rules = {
  'name': [Length(1, 255), InstanceOf(str)],
  'user_id': [Length(11), InstanceOf(int)],
}
参数间的合法性检查
# 在某些需求中,接口需要针对不同参数值检查另外参数的合法性
rules = {
'name': [Required, Length(1, 255), InstanceOf(str)],
'value': [Required],
'type': [
Required, InstanceOf(int), range(0, 2)
If(Equals(0, Then({'value': [InstanceOf(int)]}))),
If(Equals(1, Then({'value': [InstanceOf(str), Length(1, 255)]}))),
If(Equals(2, Then({'value': [InstanceOf(bool)]}))),
],
}

【Python】validator进行数据校验的更多相关文章

  1. Golang使用validator进行数据校验及自定义翻译器

    Golang使用validator进行数据校验及自定义翻译器 包下载:go get github.com/go-playground/validator/v10 一.概述 在接口开发经常会遇到一个问题 ...

  2. .net 使用validator做数据校验

    概述 在把用户输入的数据存储到数据库之前一般都要对数据做服务端校验,于是想到了.net自带的数据校验框架validator.本文对validator的使用方法进行介绍,并分析下校验的的原理. 使用va ...

  3. 数据校验validator 与 DWZ

    在做系统时经常会用到数据校验,数据校验可以自己写,也可以用现在成的,现在记录下两种类库使用方法, <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 ...

  4. JSR303的数据校验-Hibernate Validator方式实现

    1.什么是JSR303? JSR303是java为bean数据合法性校验所提供的一个标准规范,叫做Bean Validation. Bean Validation是一个运行时的数据校验框架,在验证之后 ...

  5. 使用Hibernate Validator来帮你做数据校验

    数据校验是贯穿所有应用程序层(从表示层到持久层)的常见任务.通常在每个层中实现相同的验证逻辑,这是耗时且容易出错的.这里我们可以使用Hibernate Validator来帮助我处理这项任务.对此,H ...

  6. 数据校验DWZ与validator

    在做系统时经常会用到数据校验,数据校验可以自己写,也可以用现在成的,现在记录下两种类库使用方法, validato <!DOCTYPE HTML PUBLIC "-//W3C//DTD ...

  7. 用spring的@Validated注解和org.hibernate.validator.constraints.*的一些注解在后台完成数据校验

    这个demo主要是让spring的@Validated注解和hibernate支持JSR数据校验的一些注解结合起来,完成数据校验.这个demo用的是springboot. 首先domain对象Foo的 ...

  8. SpringBoot 2 快速整合 | Hibernate Validator 数据校验

    概述 在开发RESTFull API 和普通的表单提交都需要对用户提交的数据进行校验,例如:用户姓名不能为空,年龄必须大于0 等等.这里我们主要说的是后台的校验,在 SpringBoot 中我们可以通 ...

  9. Struts2数据校验

    Struts2数据校验 1.常见数据校验方法 表单数据的校验方式: 表单中的数据必须被效验以后才能够被使用,常用的效验方式分为两种: 前台校验:也称之为客户端效验,主要是通过JS编程的方式进行表单数据 ...

  10. Spring MVC数据校验

    在web应用程序中,为了防止客户端传来的数据引发程序异常,常常需要对 数据进行验证.输入验证分为客户端验证与服务器端验证.客户端验证主要通过JavaScript脚本进行,而服务器端验证则主要通过Jav ...

随机推荐

  1. NOIP2022 游记

    无论结局如何,我都曾经来过. Day -1 zak 模拟赛,被殴打了. Day 0 上午 补模拟赛题. 下午 补模拟赛题. 徐老师过来分配了第二天下午造数据名单. 我造 T2.希望不会太难.(flag ...

  2. c#获取当前进程使用内存

    public static string GetMemory()        {            Process proc = Process.GetCurrentProcess();     ...

  3. PyMySQL插入

    title: PyMySQL插入 author: 杨晓东 permalink: PyMySQL插入 date: 2021-10-02 11:27:04 categories: - 投篮 tags: - ...

  4. 35.Linux 性能监控常用命令

    内存 top CPU yum install -y sysstat mpstat 网络 netstat //参数说明 //-n:拒绝显示别卖,能显示数字的全部转化数字 //-l:仅列出Listen(监 ...

  5. less的基本用法

    学习less详细文章链接 https://juejin.cn/post/6844903520441729037#heading-9

  6. 扫二维码 下载app

    <?phpheader("Access-Control-Allow-Origin: https:// ");$version = PAPI_GetSafeParam('ver ...

  7. (jmeter笔记)添加正则提取器和JSON提取器

    添加正则提取器和JSON提取器 1.正则提取器: 返回的Token如下: 引用名称:可以理解为变量名 //调用表示${变量名} 正则表达式:"Token":"(.+?)& ...

  8. Vue3.0 里为什么要用 Proxy API 替代 defineProperty API?

    响应式优化. a. defineProperty API 的局限性最大原因是它只能针对单例属性做监听. Vue2.x 中的响应式实现正是基于 defineProperty 中的 descriptor, ...

  9. CF1557总结

    CF1557总结 Codeforces Round #737 (Div. 2) 先看了 A .意思是要把序列分成两个子序列,使得两序列各自平均值的和最小,输出最小值,要求 \(O(n)\) .想半天然 ...

  10. 渗透测试工具&导航合集

    #前言 表哥们一般都有自己强大的工具库,今天我也稍作整理,分享交流出来一部分 #信息收集 ####dirbuster kali自带的一款工具,fuzz很方便 ####gorailgun 一款自动化做的 ...