📜  adonis 限制 - Javascript (1)

📅  最后修改于: 2023-12-03 14:39:03.041000             🧑  作者: Mango

Adonis 限制 - Javascript

Adonis 是一款基于 Node.js 平台的 Web 应用程序框架,它采用了 MVC(Model-View-Controller)架构模式,并且在 Node.js 之上构建出了一个易于使用的和高度可扩展的应用程序框架。 Adonis 的限制功能则是 Adonis 框架所提供的一种数据验证机制。

限制

Adonis 提供了一组强大的验证器,用于验证请求中传递的数据是否符合特定的规则。基于 Adonis 提供的限制,开发人员可以改善 API 端点的安全性并提高用户输入数据的质量。下面是一些常用的限制类型:

必填限制(required)

这种限制用于确保请求中提供的某个属性是必需的。 如果属性不存在或值被设置为 null,undefined 或为空字符串,则会返回一个错误信息。 为了在入口点或区块中使用它,你需要在此处调用 required 函数,如下所示:

const { rules, schema } = use('Validator')

const rules = {
  name: 'required'
}
const validation = await validate(request.all(), rules)

如果传递的数据与给定的规则不匹配,则将返回一个错误响应。

最小长度限制(min)

这种限制用于确保请求中提供的属性的长度达到最小长度限制。 对于字符串,长度指的是字符串中的字符数;对于数字,长度指的是整数部分的位数。 为了在入口点或区块中使用它,你需要在此处调用 min 函数,并将最小长度作为参数,如下所示:

const { rules, schema } = use('Validator')

const rules = {
  age: 'min:18'
}
const validation = await validate(request.all(), rules)

如果传递的数据与给定的规则不匹配,则将返回一个错误响应。

最大长度限制(max)

最大长度限制用于确保请求中提供的属性的长度不超过指定的最大值。 对于字符串,长度指的是字符串中的字符数;对于数字,长度指的是整数部分的位数。 为了在入口点或区块中使用它,你需要在此处调用 max 函数,并将最大长度作为参数,如下所示:

const { rules, schema } = use('Validator')

const rules = {
  password: 'max:50'
}
const validation = await validate(request.all(), rules)

如果传递的数据与给定的规则不匹配,则将返回一个错误响应。

正则表达式限制(regex)

正则表达式限制允许您使用正则表达式验证您的数据。 为了在入口点或区块中使用它,你需要在此处调用 regex 函数,并将您的正则表达式作为参数,如下所示:

const { rules, schema } = use('Validator')

const rules = {
  email: 'regex:^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$'
}
const validation = await validate(request.all(), rules)

如果传递的数据与给定的规则不匹配,则将返回一个错误响应。

枚举限制(in)

这种限制用于确保属性的值是指定的一组值中的一种。 为了在入口点或区块中使用它,您需要在此处调用 in 函数,并将枚举值作为参数,如下所示:

const { rules, schema } = use('Validator')

const rules = {
  gender: 'in:male,female,other'
}
const validation = await validate(request.all(), rules)

如果传递的数据与给定的规则不匹配,则将返回一个错误响应。

数值限制(number)

这种限制用于确保属性是一个数字,并且在指定的最小值和最大值之间。 为了在入口点或区块中使用它,您需要在此处调用 number 函数,并将最小值和最大值作为参数,如下所示:

const { rules, schema } = use('Validator')

const rules = {
  age: 'number|min:18|max:60'
}
const validation = await validate(request.all(), rules)

如果传递的数据与给定的规则不匹配,则将返回一个错误响应。

结论

Adonis 提供了一个简单而强大的验证器,它允许开发人员验证输入数据是否符合业务逻辑。 基于 Adonis 框架的限制功能,开发人员可以轻松验证数据并提高 Web 应用程序的安全性。如果您想要了解更多关于 Adonis 的限制功能,可以查看 Adonis 官方文档