问题标签 [json-schema-validator]

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 回答
458 浏览

javascript - 在具有 maxLength 的 JSON Schema 中将属性设置为“字符串”或 null

我正在尝试创建一个允许可为空属性的 JSON 模式。例如,我希望以下 JSON 有效:

具有以下架构:

但是,它是无效的,因为它认为“null”不能有 maxLength。有没有好的方法来做到这一点?我希望有一个“可空”属性,或者类似的东西!

0 投票
1 回答
6069 浏览

swagger - Swagger: how to represent a property whose type is oneOf a list of types?

I have an object that has a property that is an object whose type would be one of list of types. All my attempts have been rejected by Swagger Editor with the following error:

The full swagger specification file is as follows (the field in question is DataSetsInquiryRsp.dataSets.dataSet):

0 投票
2 回答
3404 浏览

java - 使用 JsonSchema 验证 Json 时未发现类异常

我是 Java 新手。

我正在尝试使用 JsonSchema 验证 Json。我已经提到了Java/Android - Validate String JSON against String schema .. 我已经尝试过使用#Tihamer 代码,但我得到了一个我没有使用过的 JsonParserException。

下面是我的代码

以下是错误

我解决了以前的错误,但现在我收到了类似的错误

我没有使用 objectMapper 类,但我遇到了异常。

0 投票
2 回答
7369 浏览

java - REST 保证 JSON 模式验证不起作用

我正在使用 Spring Boot 和 REST Assured 来测试 REST API。我正在尝试使用 JSON 模式验证的示例,但它抛出了这个错误:

根据文档,架构应该位于 classpath 中。我的示例架构位于那里。这是我的项目结构和示例架构位置:

项目结构

这是我的代码。如果没有模式验证,它可以正常工作。

0 投票
1 回答
155 浏览

json - Json Schema,属性作为属性不起作用

也许听起来令人困惑,我想验证这个模型架构(应该有 $schema、title、properties 和必填字段):

我已经这样做了:

但这部分效果不佳:

有可能做到这一点吗?还是禁止使用那些构建的模式词,例如:“required”、“enum”、“properties”作为“properties”中的属性?在此先感谢您帮助我理解这部分:)

0 投票
2 回答
10040 浏览

json - json 模式属性描述和“$ref”用法

我正在编写一个 json 模式来验证由 exe 生成的 json 输出。模式有点复杂,我定义了一些在属性中引用的“定义”(“$ref”:“#/definitions/...) . 在这里使用定义更加重要,因为我有一个定义是递归的情况。

我的模式现在运行良好,它正确验证了我的 json 输出。

现在,我正在尝试使用每个属性的“description”关键字正确记录架构。为了开发模式,我使用了一个以图形方式表示模式的编辑器 (XMLSpy)。它非常有用,但我遇到了一个奇怪的行为,我不知道这是编辑器的问题还是我不​​太明白。

这是解释我的问题的 json 模式的最小示例:

当我尝试向属性添加描述时,编辑器实际上在对象的定义中添加了描述。因此,编辑器会为属性“sourcePath”和“targetPath”显示此描述,此外它还会在“parentPath”中显示此描述。

我的意图是为每个属性提供三种不同的描述(可能还有定义本身,但这不是这里的问题)。如果我将它们手动添加到 json 架构中,则没有问题,但这些描述不会出现在图形编辑器中。

所以,我很困惑。

你认为这是我的图形编辑器的问题还是我错了?

基本上,当我们使用“$ref”来定义属性时,是否可以添加一些其他字段作为描述,或者使用“$ref”是否意味着不使用其他任何内容?在这种情况下,我怎样才能正确记录财产?

我必须向一些合作伙伴提供我的 json 模式,他们必须将它们用作文档来生成正确的 json 输出。所以,尽可能地,我想为他们提供一个自我记录的 json 模式,就像我们对 XML 所做的那样。

谢谢

0 投票
1 回答
1194 浏览

jsonschema - 如何在 Json Schema 中实施限制

我们正在使用 JsonSchema 来记录我们的 Rest API,我需要确保每个字符串、数字、数组都对其应用的最大大小有限制,即

  • 所有字符串都有一个 maxLength 和模式集
  • 所有整数/数字都有一个最大集合
  • 所有数组都有一个 maxItems 集

这将允许我们对从 JsonSchema 生成的 POJO 运行 javax 验证(我们使用带有 JSR303 注释的 jsonschema2pojo)。

我宁愿不手动观察每个模式通过我的方式,所以想知道是否有任何自动化工具来检查这些项目的每个元素?如果不是,我可能会写一个:-)

非常感谢

0 投票
2 回答
14634 浏览

json - z模式中的“anyof”和“oneof”有什么区别?

看起来两者都适用于我的输入验证代码。那么具体的区别是什么?

带有 oneof 的架构

带有 anyof 的架构

0 投票
1 回答
865 浏览

json - 用于验证密钥重复节点 js 的 json 模式验证器

我正在使用 json 模式验证器来验证 nodejs 中的传入 json 数据包。我能够检查键值是否存在,还可以检查是否存在任何无效键。它工作正常。

这是我的 json 模式代码,

但我需要检查密钥是否重复。它不适用于此代码。

有效的 json

无效的 json

我需要为无效的 json 请求生成错误消息“无效的 json 包”。怎么可能?

0 投票
1 回答
1841 浏览

java - JSON 架构参考

我在让我的代码(再次)工作时遇到问题。可悲的是它正在工作,但我不知道为什么它现在不起作用。

加载模式的代码示例:


json 模式的主文件:


对其他模式文件的引用将无法解析!

我按照链接中的说明进行操作: java json schema validation relative path not working (URI not found)

有人知道如何以相对方式解决引用吗?

@Sabir Khan
我在 json 模式文件中没有改变任何东西!我只是更改了一些代码行的顺序。我没有任何例外。它只是不能解决裁判。

前:


后:


MyBoolean.json


这是 MyBoolean_1.json 文件: