我正在编写一个JSON模式,我想添加一个字段,它接受文件路径。是否有一种方法来验证文件路径是否存在(类似于$schema
在找不到模式文件时显示错误)?下面是我所拥有的:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"file": {
"type": "string",
"pattern": "^(\\./|\\.\\./|https?://).*\\.json$",
"description": "The path to another json file."
}
}
}
字符串
它在文件中看起来像这样,如果文件不存在,它将显示警告/错误。
{
"file": "../path/to/file.json"
}
型
x1c 0d1x的数据
1条答案
按热度按时间pbwdgjma1#
首先,
$schema
不能解析任何东西。它是元模式的标识符,而不是网络可达的uri。它不意味着要解析到网络位置,尽管有些实现确实尝试解析它。第二件事,验证本身并不解析属性值的任何引用,有一些包可以用来解析引用,但这不在JSON Schema规范或验证机制的范围内。你可以使用
pattern
来创建特定路径uri模式的正则表达式,但这就是验证的范围。