第三方库文件Joi对数据进行验证的方法以及解决Joi.validate is not a function的问题


Joi:javaScript对象的规则描述语言和验证器

1.npm install joi@14.3.1

2.建立joi.js文件

3.导入第三方包joi

const Joi = require('joi');

4.自定义验证规则

const schema = {

  username:Joi.string().min(2).max(10).required().error(new Error('用户名不符合验证规则')

}

5.使用验证规则验证数据是否符合,使用joi的一个方法validate,返回的是promise对象

Joi.validate({username:'zhangsan'},schema);

6.因为上面的方法是返回promise,所以可以用异步函数来处理

async function run() {

  try{

     await Joi.validate({username:'zhangsan'},schema);

  }catch(ex) {

    console.log(ex.message);

    return;

  }

  console.log(验证通过');

run();

7.如果在验证规则时,出现Joi.validate is not a function的问题,则有可能是版本问题,只需卸载当前的joi版本,重新npm install joi@14.3.1版本即可

 

//引入Joi模块
const Joi = require('joi');
//定义对象的验证规则
const schema = {
    username: Joi.string().min(2).max(10).required().error(new Error('用户名不符合验证规则'))
}
async function run() {
    try {
        //使用规则验证对象 返回的是promise对象 所以可以用异步函数进行处理
        await Joi.validate({ username: '张三' }, schema);
    } catch (ex) {
        console.log(ex.message);
        return;
    }
    console.log('验证通过');
}
run();

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM