提问人:Lambda 提问时间:6/17/2023 最后编辑:Prajwal KulkarniLambda 更新时间:6/18/2023 访问量:30
给定的写入模式,当我们为字符串属性设置“readOnly”时,行为不正确
Given write mode, when we set 'readOnly' for string property, the behaviors is not correct
问:
我正在尝试使用 networknt 中的 json-schema-validator lib 来根据模式验证我的 JSON 数据。
但这似乎不是正确的行为。
readOnly=false 的示例架构
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "Read Only Schema", "description": "Testing Read Only Schema Validation", "type": "object", "properties": { "firstName": { "type": "string", "readOnly": **false** } } }
数据需要验证{ "firstName": "George" }
测试用例
@Test void givenWriteModelWhenReadOnlyFalseThenNeedAllows() throws IOException { ObjectNode node = getJsonNode(); Set<ValidationMessage> errors = loadJsonSchema(false).validate(node); }
我的情况是,当发送HTTP POST请求以创建实体时,需要检查配置为“readOnly=true或false”的相关属性。
如果配置为 ,当我们设置为 for string 属性时,需要触发验证并报告有关无法更改它的错误,但实际上,没有任何错误。
如果配置为 ,当我们为 String 属性设置为 时,这意味着可以创建/编辑 String 属性,对吧?如果是这样,它需要被允许,但实际上,它仍然得到一个错误 任何人都可以在这里帮助我,或者我对这个 readOnly 关键字的理解有问题?提前致谢!readOnly=true
readOnly
true
readOnly=false
readOnly
false
$.firstName: is a read-only field, it cannot be changed
答: 暂无答案
评论