Node.js实现数据验证和校验功能
// 引入所需模块
const Joi = require('joi');
// 定义数据模型的验证规则
const schema = Joi.object().keys({
username: Joi.string().alphanum().min(3).max(30).required(),
password: Joi.string().regex(/^[a-zA-Z0-9]{3,30}$/).required(),
email: Joi.string().email({ minDomainAtoms: 2 }).required()
});
// 使用Joi进行数据验证的函数
function validateUser(user) {
return Joi.validate(user, schema, { abortEarly: false });
}
// 示例:使用上述函数验证用户数据
const user = {
username: 'johndoe',
password: '123',
email: 'johndoe@example.com'
};
validateUser(user)
.then(result => {
console.log('验证成功,数据如下:', result.value);
})
.catch(error => {
console.error('验证失败,错误信息如下:', error);
});
这段代码首先引入了joi
模块,并定义了一个用户数据的验证规则schema
。然后定义了一个validateUser
函数,用于接收用户数据并进行验证。最后,我们创建了一个用户数据示例,并调用validateUser
函数来验证数据。根据验证结果,它会通过控制台输出验证成功的数据或错误信息。
评论已关闭