我正在使用 JSON 来定义一些配置文件,并且我想使用json scheme来验证它们。我的问题是我想确保某个对象的键应该是在同一 JSON 中定义的数组项的子集:例如:
有效的:
{
"files": ["file1", "file2"],
"filelocations": {
"file1": "/etc/globalconfigs/file1.conf",
"file2": "/usr/bin/file2.sh"
}
}
无效(其他键不在 中files
):
{
"files": ["file1", "file2"],
"filelocations": {
"file1": "/etc/globalconfigs/file1.conf",
"otherkey": "/usr/bin/file2.sh"
}
}
等等我想要的是确保在数组filelocations
中找到键。files
虽然在这个例子中,我们可以通过组合键值来改变 JSON 的结构,这样就不需要这种约束,但在我的例子中,我不能像这样改变 JSON,所以有一个验证很好机制。
我怎样才能做到这一点?