如何获取AJV(v5.0.0)以使用JSON Schema 0.7?

时间:2018-12-08 03:19:58

标签: jsonschema ajv

我似乎找不到如何使AJV使用0.7(或0.6或0.4)的方法。我认为这是“ $ schema”关键字,但是我找不到不会引起错误的字符串(URI)。

如果我是对的,应该给关键字“ $ schema”赋值是什么?

如果我错了,还有其他指示版本的方法,请告诉我。

在此先感谢您的帮助。

1 个答案:

答案 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]

参考

  1. https://ajv.js.org/