问题标签 [tv4]

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 投票
3 回答
2077 浏览

json - 如何验证 json 对象字段是否与 nodeJS tv4 验证库相等?

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

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

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

0 投票
3 回答
982 浏览

jsonschema - JsonSchema 未使用 oneOf 验证

需要帮助来查找此架构的错误。它有 oneOf 运算符。架构在这里:

我的 Json 是这样的:

它不适用于 tv4,我也尝试了这个 在线工具。它在没有 oneOf 运算符的情况下工作。否则它不会验证任何工具。

编辑

阅读答案后,我修改了架构。新架构是:

json在这里

但它验证。我想在正文中强制执行“客户”或“用户”之一。为了测试,我已经从正文中删除了用户。

请帮忙。

0 投票
1 回答
3160 浏览

arrays - TV4 JSON Schema 对象数组验证

我想验证一个名为“foo”的属性是否包含一个“bar”对象数组。

如果我使用数组作为 foo 的值,则使用 TV4 进行验证所有工作都按预期工作,但是如果我指定数组以外的其他内容,例如字符串或整数,则验证通过时不应该通过。

使用正确格式化的数组按预期通过。

由于格式不正确的数组而按预期失败。

传递事件虽然 foo 应该是一个数组。

下面是完整的代码。

0 投票
1 回答
1400 浏览

javascript - JSON tv4 对象在 true 且存在其他对象时有效

可以验证 JSON,如果对象的值为 true,那么这个对象是有效的,如果 Obj2.included == true 是有效的,如果 Obj1.included == true ?

这是一小部分架构:

我想检查:

  • 如果 ZalA.included == true,则有效。
  • 如果 ZalA.included == true 并且 ZalB.included == true,则有效。
  • 如果 ZalA.included == false 和 ZalB.included == true,则无效。

是否可以使用 tv4 JSON 验证器检查这些约束?

0 投票
2 回答
76 浏览

javascript - _water_glass 的 javascript 正则表达式模式

我需要一个 javascript 正则表达式模式来测试模式变量,因此它应该具有以下任一条件。

  1. 它可以以任何字符开头,后跟“_water_glass”,并且不能是 water_glass 之后的任何字符,例如“xxxx_water_glass”

或者

  1. 可以只是“water_glass”,不需要在 water_glass 之前有字符,也不能是 water_glass 之后的任何内容。

任何人都可以帮助获得正则表达式模式。

0 投票
2 回答
3853 浏览

json - 无法验证架构并正确使用附加属性

我正在尝试验证我的 JSON 模式并使用 additionalProperties: false 来确认没有其他属性。我的 responseBody 如下所示:

在邮递员测试中,我添加了这个

测试应该返回失败,因为我从架构中删除了“电话”属性,但测试仍然运行有效......我试图将架构更改为 {type:array, properties: {type: object, properties {list of properties}additionalProperties : false}} 但测试仍然返回 PASS 而不是 FAIL ......知道吗?

0 投票
1 回答
427 浏览

javascript - json 模式不适用于空响应正文

我已经编写了一个模式来验证响应正文。并将所有项目设置为“必需”。但是当body返回空数组时,它直到PASS,应该是FAIL。像这样的架构:

像这样的回应:

0 投票
1 回答
4342 浏览

jsonschema - oneOf 的 JSON Schema 自定义消息

有没有办法为json模式(tv4)设置自定义消息,以便在oneOf字段失败时?

我看到大约一年前这里这里有一个自定义消息的问题,但是有没有办法让这个工作适合这样的事情?

与仅仅看到相反Data does not match any schemas from \"oneOf\",你可以看到Code does not match schema

[编辑]

我正在尽我所能阅读 tv4 代码,并且我看到了很多关于自定义错误消息和代码的信息,例如

我可以用它自己的状态代码(通过这个函数)通过​​一个简单的行添加我自己的错误tv4.defineError('MY_CUSTOM_CODE_ERROR', 999999, "Hello World, you have a custom code error");。如何将此错误与此特定 json 架构相关联?如果我完全在错误的地方,那么请有人指出这一点

0 投票
1 回答
1131 浏览

validation - 尝试在带有 tv4 的 Postman 中使用外部参考

我正在尝试在 Postman 中使用外部引用并使用 tv4 进行验证。这是我的代码:

测试后我得到

'TypeError 无法读取未定义的属性'$ref''

.

这是否意味着我的架构在某种程度上无效?

0 投票
1 回答
5842 浏览

json - POSTMAN 为模式验证测试返回失败

我有一个示例响应:

我为响应编写了一个测试:

此测试返回 [FAIL]。测试中有哪些错误?

感谢您的回复!