0

我正在编写代码来验证用户创建方法的 json 请求。Validator 必须检查 email 字段是否等于字段 confirmEmail。请求示例:

{
     "firstName":"Homer",
     "lastName":"Simpson", 
     "email":"test1234@fox.com",
     "confirmEmail":"test1234@fox.com",
     ...
}

我正在使用 tv4 模式验证库。目标是编写一个模式来验证 email 和 confirmEmail 字段之间的相等性。

当然,我可以直接检查请求中的那些字段,但我会将其用作最后的手段,以防模式验证不起作用。

4

3 回答 3

1

您无法使用 json-schema 测试属性之间的值是否相等。Json-schema 用于验证 json 结构。

您可以通过正则表达式测试这些字段是否存在以及它们是否是正确的电子邮件。您甚至可以测试它们是否属于枚举中的一组预定义值。但没有别的。

于 2014-12-22T21:37:19.983 回答
0

在我的项目中,我使用jpv模块

const jpv = require('jpv');

const pattern = {
     "firstName" : /.+/,
     "email" : "[email]",
     ...
};

const isVaild =  jpv.validate(obj, pattern)
于 2018-03-29T20:52:38.210 回答
-1
jpv.validate(data, messageSchema))
于 2019-07-09T11:37:23.350 回答