AJV 模式验证输出 ~(波形符)当模式中有 /(斜杠)时

问题描述 投票:0回答:1

属性名称中包含 /(斜杠)的对象中 AJV 架构错误的输出是打印 ~1(波形符)而不是实际的属性名称。

{
"abc/def":{
"a":"b",
"c":"d"

}
}

假设在模式中,如果 c 被定义为整数,

那么错误就是

/abc~1def/c must be integer

应该做什么才能使输出变成:

/abc/def/c must be integer
json-schema-validator ajv
1个回答
0
投票

您是否尝试过双重转义

"abc\\cdef"
键?

不幸的是,字符串替换是 AJV 中的一个已知问题:

https://stackoverflow.com/questions/30739738/json-schema-validation-with-escaped-characters-in-patterns-fails

https://github.com/ajv-validator/ajv/issues?q=is%3Aissue+is%3Aopen+%7E1

© www.soinside.com 2019 - 2024. All rights reserved.