我似乎找不到如何使AJV使用0.7(或0.6或0.4)的方法。我认为这是“ $ schema”关键字,但是我找不到不会引起错误的字符串(URI)。
如果我是对的,应该给关键字“ $ schema”赋值是什么?
如果我错了,还有其他指示版本的方法,请告诉我。
在此先感谢您的帮助。
答案 0 :(得分:0)
在Ajv网站上,这是他们建议您告诉Ajv v6使用非默认架构的方式:
请注意:要将Ajv与draft-06模式一起使用,您需要明确地将meta-schema添加到验证器实例:[1]
ajv.addMetaSchema(require('ajv/lib/refs/json-schema-draft-06.json'));
如果您安装Ajv v5并查看lib/refs
文件夹,则草案07模式不可用:
$data.json
json-schema-draft-04.json
json-schema-draft-06.json
json-schema-v5.json
因此,我认为您无法将类似的技术应用于Ajv v5的Draft-07,这可能就是您为此苦苦挣扎的原因。
我的建议是使用Ajv v6,因为它默认情况下适用于draft-07:
支持草稿07的Ajv版本6.0.0已发布。 [1]
参考