问题标签 [joi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2753 浏览

hapijs - 为什么这个 joi 正则表达式验证十六进制颜色失败

为什么这个正则表达式应该匹配但它失败了?

错误

child "color" fails because ["color" with value "#333acf " fails to match the required pattern: /^#[A-Fa-f0-9]{6}$/]

有效载荷

0 投票
2 回答
2332 浏览

javascript - 如何从 Joi 中的验证失败中捕获回调

我们正在使用 Hapi 构建一个 Web 服务。我们的路线有一些验证。我想知道是否可以在 hapi 回复客户端之前或之后捕获或覆盖验证失败时的默认回调。

我的(非工作)代码:

0 投票
1 回答
949 浏览

node.js - 承诺去节点化 Joi.validate

我有一个关于去节点化和承诺的问题。我有一些代码(如下所示);我正在使用 Promise@7.0.1,我只想对 Joi.validate 进行去节点化。如果我做类似的事情

我给它有效的查询字符串参数(见下面的代码),它按预期工作。但是,如果我将 rowCount 设为 30,它就会挂起。我不能在 then() 中使用 function(err,value),那么如何在 Promise 链中处理 Joi 验证错误/消息?这可能吗?

这是在没有 denodeify 的情况下工作的代码:

0 投票
2 回答
16555 浏览

node.js - hapi route joi 验证密码确认

如何检查密码和密码确认是否相同?

0 投票
1 回答
1264 浏览

javascript - hapi joi 过滤器有效值

有没有办法做同样的事情

在验证码中?

0 投票
1 回答
1110 浏览

hapijs - 使用 Joi/Hapi,如何为所有键验证哈希中的条目?

我想让我的前端将值的哈希值推送到后端。散列可以有任何(JSON 合法)键,但每个键的值必须适合特定的模式。想一想:

所以扩展对象有一个块茎字段。tubers 字段有很多键,但每个值都必须有一个整数的权重和成本。

我似乎无法将其映射到我的正常 Joi 对象架构框架中。

0 投票
2 回答
6210 浏览

javascript - 使用 Joi,如何将 .or 用于递归对象

我正在使用节点模块 Joi 进行一些验证,但在使用 .or() 方法时遇到了问题。

在他们的文档中,他们将用途指定为:

但是我正在尝试验证一个对象,并且我想使用 .or() 来检查嵌套在不同属性下的属性,明白了吗?就像是:

但我似乎无法让它工作。有谁知道我是否遗漏了什么?对于嵌套对象,用户 .or() 是这样吗?

谢谢!

0 投票
2 回答
752 浏览

hapijs - 如何像 Joi 库那样在 hapi 回复中返回验证属性

我对属性有自己的自定义验证,我想返回一个 400 响应,该响应类似于在其他字段上返回的 JOI.validation。这意味着除了错误和消息之外,我还想返回一个验证属性——这样客户端就可以知道要突出显示哪个字段。

所以,而不是这个

我想用这个回复

如何在 hapi 回复中添加验证?

我一直在这样做 - 这一直没有奏效

我还假设我不能为 Joi 提供自定义验证器,否则我只会扩展 Joi。但是,我可以在回复中使用 Joi 验证错误类型或对象来在我的回复中获取类似 Joi 的对象结构。

顺便说一句,我的电话验证不是一个简单的正则表达式,并且有特殊情况,所以我不能使用 Joi 内置的正则表达式验证器。

0 投票
5 回答
4426 浏览

javascript - 在 Joi 验证中忽略“必需”?

我正在尝试使用 Joi 验证 RESTful Web 服务接受的数据模型。

对于创建操作,我想对字段强制执行“必需”验证。但是,对于更新操作,可能会提交部分数据对象,因此我希望忽略“必需”属性。

除了创建两个模式之外,有没有办法实现这一点?

0 投票
2 回答
632 浏览

arangodb - 在 Foxx 应用程序中使用 joi 验证数组项

我在 foxx 应用程序中使用 joi 数组项验证以及使用 arangodb-2.5.5 的 arango-shell 时遇到问题。joi -documentation建议使用类似的东西:

用于验证类似于以下内容的数据集:

但是,在 Foxx 应用程序中使用它会导致应用程序停止工作。将上面的代码段粘贴到 arango-shell 中会产生以下输出:

是否有我遗漏的东西,或者 arangodb 使用了修改/更小的 joi 版本,该版本已删除此功能?