[英]JSON schema + relative JSON-pointers: how to verify “confirm password” field
这是我的JSON架构 :
{
"required": [
"username",
"password",
"confirmPassword"
],
"properties": {
"username": {
"minLength": 3,
"type": "string"
},
"password": {
"minLength": 6,
"type": "string"
},
"confirmPassword": {
"const": {
"$data": "1/password"
},
"type": "string"
}
},
"type": "object"
}
这是我的数据:
{
"username": "abc",
"password": "asdfasdf",
"confirmPassword": "asdfasdf"
}
您可以将这些复制粘贴到此在线验证器中,以查看会发生什么。
confirmPassword
字段验证失败,并显示错误消息:
值“asdfasdf”与const不匹配。
我相信我的相对JSON指针存在问题,但我无法弄清楚正确的语法是什么。
AFAICT, 1/password
意味着“上升一级,然后检查password
属性”,但似乎并非如此。 什么是正确的语法?
我正在使用的具体实现是AJV,它说它确实 支持相对JSON指针 。
原来唯一的问题是我忘了将$data
选项设置为true
。 例如
const ajv = new Ajv({
allErrors: true,
$data: true,
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.