"deliveryContact": {
"allOf": [
{
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"maxLength": 1024
},
"phone": {
"type": "string",
"maxLength": 24
}
}
},
{
"$ref": "#/definitions/address"
}
]
},
"address": {
"type": "object",
"additionalProperties": false,
"properties": {
"address": {
"type": "string",
"maxLength": 1024
},
"postalCode": {
"type": "string",
"maxLength": 12
},
"city": {
"type": "string",
"maxLength": 512
},
"state": {
"type": "string",
"maxLength": 512
}
}
},
样本数据
delivery: {
address: 'my address',
postalCode: 'my postalCode',
city: 'my city',
state: 'my state',
name: 'my name',
phone: 'my phone'
},
我使用AJV 6.10.0来验证我的数据,但我认为我有一个错误的模式定义。带Ajv选项:
ajv = require('ajv')({
allErrors: true,
verbose: true,
removeAdditional: false,
});
实际上,我有6个错误,警告每个属性的其他属性
在验证allOf(姓名和电话)中的第一个对象时,验证在(地址、邮政编码、城市和州)中发现错误
如果我删除了第一个allOf对象(姓名、电话)的附加属性,在验证地址架构的过程中,验证会在(姓名和电话)上发现错误
如何解决模式定义
JSON 架构
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"required": [
"delivery"
],
"properties": {
"delivery": {
"type": "object",
"additionalProperties": false,
"required": [
"name",
"phone",
"address"
],
"properties": {
"name": {
"type": "string",
"maxLength": 1024
},
"phone": {
"type": "string",
"maxLength": 24
},
"address": {
"$ref": "#/definitions/address"
}
}
}
},
"definitions": {
"address": {
"type": "object",
"additionalProperties": false,
"properties": {
"address": {
"type": "string",
"maxLength": 1024
},
"postalCode": {
"type": "string",
"maxLength": 12
},
"city": {
"type": "string",
"maxLength": 512
},
"state": {
"type": "string",
"maxLength": 512
}
}
}
}
}
样本数据
{
"delivery": {
"address": {
"address": "myaddress",
"postalCode": "mypostalCode",
"city": "mycity",
"state": "mystate"
},
"name": "myname",
"phone": "myphone"
}
}
如果你想测试它,你可以在这里做:https://www.jsonschemavalidator.net/
我正试图通过使用< code>allOf来解决这个swagger API继承的问题。这是我的swagger yaml文件。 当我将其粘贴到在线编辑器中时,我收到以下错误,我很难弄清楚。
在这里输入image description我有一个如下所示的json模式,我希望根据B和C的值将定义加载到D和E中,为此我已经编写了所有的条件。我使用json-schema-validator在应用程序中进行json模式验证。 javaCode看起来像
我看了已经问过的问题,但没有一个能够解决我的问题。 < code > https://stack overflow . com/questions/45534187/path-and-formdata-parameter-at-same-time < code > https://stack overflow . com/questions/50562971/swagger-editor-show
我正在寻找一种解决方案,使用Jackson基于同一POJO中的其他属性值序列化POJO对象属性 如果某个属性值符合某些条件,则应根据要求更改其他属性值 例如,下面是我的JSON对象: 在上述情况下,如果的值符合某些条件,那么我应该能够更改的值 为什么需要这样做: 是一个配置对象 和-是配置设置 在上面的例子中,中有一个是,我需要屏蔽/更改相应的 还要补充一点,在这个例子中,属性是和,但是如果我们找
问题内容: 我正在使用以下代码将字符串解析为DOM: 哪里是这样的。 给我。如果我做类似的事情,我会得到一个DOM对象。但是,如果像往常一样尝试访问任何属性,它将为我提供: 其他属性也是如此,例如。另一方面,属性检索很好。 是否有魔术功能可以访问这些属性? 问题答案: 您的当前方法失败,因为未为给定XML文档定义HTML属性。如果提供MIME类型,则该方法应该起作用。 下面的代码为尚不支持它的浏览
我在“放心”方面的经验有限。我们有很多测试,我通常可以在google中找到示例,或者失败,但当我尝试匹配匿名数组中元素的嵌套属性,并验证属性上下(堂兄弟?)时,我会陷入困境。 示例 JSON: 我正在使用放心,我想在列表中找到等于LPM的元素,然后仅验证该元素的、和。 当我最初开始验证响应时,数组中只能有一个项目,因此我使用了: 但是,这不再保证工作,因为数组中可能有多个元素,并且顺序不保证。 我