hapi.js验证器joi.js报错提示

在使用hapi.js进行数据验证时,如果出现”Cannot set uncompiled validation rules without configuring a validator”的错误,这通常是因为没有正确配置Joi验证器。

为了正确地使用Joi验证器,需要先将其配置为hapi.js的默认验证器。可以在hapi.js服务器对象的选项中添加”validate”字段来配置Joi验证器。以下是一个示例:

const Hapi = require('@hapi/hapi');
const Joi = require('joi');

const server = new Hapi.Server({
    port: 3000,
    host: 'localhost',
    validate: {
        failAction: (request, h, err) => {
            throw err;
        },
        options: {
            abortEarly: false
        },
        schemaOptions: {
            abortEarly: false
        }
    }
});

// ...

在上述示例中,我们将Joi验证器配置为hapi.js的默认验证器,并设置了一些选项。其中,failAction选项指定了验证失败时的处理方式,options选项和schemaOptions选项用于配置Joi验证器的选项。在使用Joi验证器时,需要遵循Joi的规则和语法,以确保验证器能够正常工作。