您的位置:首页 > 其它

AJV学习

2016-07-02 01:01 405 查看
AJV是一个基于JSON-Schema的依赖包,他可以将我们定义的Schema格式作为参数生成一个对象,使用这个对象的构造函数可以用于检测数据的合法性,除此之外还能够自定义directive来产生我们需要的format。

AJV支持draft4和V5标准。其中,V5是Schema现在的一种改进标准,未加入到最新的Schema标准中,AJV使用了V5支持的概念和功能。

对于Keyword部分,官方文档中已经很清晰地罗列出来了(http://epoberezkin.github.io/ajv/),这里只对其中的一些比较难理解或者不那么直观的部分进行描述。1、

1、format

对于string,AJV为我们定义了一些常用的类型,注入email,ipv4的URL等等,设置这个之后就可以直接检测格式

但是,虽然AJV提供了max和min来限制format范围,可以除了年份可以直观量化外,注入EMAIL和URL应该怎么定义范围呢?


2、additionalItem

这个keyword故名思议,true就是允许数组中有超过定义的数量的元素,false就是不能。

keyword还有一个属性是可以为一个object, 这说明超过定义的数量之后的元素必须为这个object的格式。

3、switch

AJV给出了一个最简单的选择语句switch,虽然功能十分简单,但是这个小型的功能之于JSON,我感觉就像是SASS之于CSS一样,使得定义keyword和定义域变得可编程化,灵活了许多。





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: