第三方庫文件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