这只是一个简短的问题,我正在起诉Joi进行验证,我想显示一个给定的错误
departureDate: Joi.date().format('YYYY-MM-DD').error(() => ({
message: 'Date format must be YYYY-MM-DD'
})).min(moment().format('YYYY-MM-DD'))
.required()
.error(() => ({
message: 'No trips to the past'
})),
问题是,即
我必须使用Joi验证库在API输入中进行验证,因此发送输出。
我说创建了一个模式,如下所示:
import Joi from '@hapi/joi'
const eventSchema = Joi.object({
title: Joi.string()
.min(7)
.max(50)
.required()
.error(() => Error('Event title has to be least 7 and max 50 characters.')),
description: Joi.string()
当我验证我的graphql参数时,我得到了类似于密码字段的错误消息。 "password" with value "" fails to match the required pattern: /^(?=\\S*[a-z])(?=\\S*[A-Z])(?=\\S*\\d)(?=\\S*[^\\w\\s])\\S{8,30}$/" 我不想在错误消息中显示正则表达式模式。因此,我尝试为密码字段设置自定义错误消息,但它仍然显示正则表达式模式。 import Joi from "joi";
export default Joi.object(
我有一个表单,用户可以在其中添加更多的作者,第一个是必需的,并且它有自己的字段验证。
当用户添加更多作者时,这些作者存储在数组中,因此,如果用户不添加更多作者,则会显示以下错误消息:
"\"authors_first_name\" must be an array"
"\"authors_last_name\" must be an array"
"\"authors_country\" must be an array"
当数组不超过一个作者时,如何使数组可选?但是在添加作者的时候需要吗?
con
以下是我想要实现的目标:
在前端使用Joi.Data验证用户输入数据在后端验证,使用Joi.Potential验证错误也返回给,因为使用相同的验证框架可以处理这些错误。
在前端,我们已经翻译了一些错误的消息,其余的则返回到Joi默认消息。在后端,我们没有翻译。
当我试图重新创建错误消息时,我的问题就出现了。我如何才能:
1)访问“模板字符串”
在Joi库中,每个值类型都有自己的一组模板消息:
const messages = {
// ...
'string.min': '{{#label}} length must be at least {{#lim
每当我向/api/user/login发送带有Postman的post请求时。它显示未定义user.password。我尝试将明文密码与存储在MongoDB中的现有哈希密码进行比较,但显示的是ReferenceError: user is not defined。 下面是代码和带有屏幕截图的错误消息。请告诉我我哪里搞砸了。 const router = require('express').Router();
const User = require('../model/User');
const bcrypt = require(
我正在尝试在ArangoDB中设置一个消息集合,用于在输入消息时设置时间戳。但是,当我在foxx中设置模型时,如果我在模型模式中设置joi.date()或joi.date().timestamp(),它将无法工作。
我尝试在中使用该示例,并将其转换为从测试示例中使用。
'use strict';
var Foxx = require('org/arangodb/foxx');
var joi = require('joi');
var now = new Date();
var javascriptTimestamp = now.getTim
我正在尝试使用joi包在Hapi节点服务器中验证GET请求。验证正在按预期正确工作。但是,如果没有传递参数,我很难找到返回错误的方法。目前,如果没有传递参数,则成功。另外,是否有一种方法来修改正在发送的响应?
var Hapi = require('hapi');
var Joi = require('joi');
var server = module.exports = new Hapi.Server();
server.connection({
host : process.env.HOST,
port : 3000
});
serve