Json Schema
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Json Schema相关的知识,希望对你有一定的参考价值。
参考技术A 定义了一系列关键字,元数据通过这些关键字来描述 Json 数据的规范。一个非常流行的 JSON Schema 验证工具。
安装: npm install ajv -S , npm install ajv-errors -S
使用:
使用 z-schema 编译 JSON Schema Draft-03
【中文标题】使用 z-schema 编译 JSON Schema Draft-03【英文标题】:Compiling JSON Schema draft-03 with z-schema 【发布时间】:2015-06-01 15:48:58 【问题描述】:我有一些 js 对象的草稿 -03 json 架构。
我正在使用 z-schema https://github.com/zaggino/z-schema 来验证 js 对象的架构。
我在它的 api setRemoteReference
的帮助下设置远程引用并从这里提供 Draft-03 模式对象
http://json-schema.org/draft-03/schema#
var ZSV = new ZSchemaValidator( breakOnFirstError: false );
ZSV.setRemoteReference('http://json-schema.org/draft-03/schema#',
// json object downloaded from draft-03 url
);
但是我调用 validate 方法它会抛出错误
["code":"REMOTE_NOT_VALID","params":["http://json-schema.org/draft-03/schema#"],"message":"Remote reference didn't compile successfully: http://json-schema.org/draft-03/schema#","path":"#/uri(http://json-schema.org/draft-03/schema)","inner": ....
好像编译失败了。 但是从正宗源http://json-schema.org/draft-03/schema#下载的schema对象怎么会出错呢?
还是说,z-schema 无法有效编译draft-03?
所以我的问题是,如何使用 z-schema 验证 Draft-03?
【问题讨论】:
【参考方案1】:如果问题是在 v4 工具中使用 v3 架构,那么您可以尝试 json-schema-compatibility。
它将架构标准化为 v4 - v3 架构已更新,v4 架构未更改。
(完全披露:我编写了工具)
【讨论】:
以上是关于Json Schema的主要内容,如果未能解决你的问题,请参考以下文章