内容简介:Library to verify JSON structure easily using a lightweight JSON schema syntaxThis project results from my need to verify JSON schema in a lightweight manner, without the need for an extensive definition and development code.The schema syntax is minimalist
Verify JSON
Library to verify JSON structure easily using a lightweight JSON schema syntax
About
This project results from my need to verify JSON schema in a lightweight manner, without the need for an extensive definition and development code.
The schema syntax is minimalist and extremely easy to write.
Installation
npm install -s verify-json const verify = require('verify-json') import verify from 'verify-json';
Example
const { verify } = require("verify-json"); let json = { markers: [ { name: "Rixos The Palm Dubai", location: [25.1212, 55.1535], favorite: true, color: "red", }, { name: "Shangri-La Hotel", location: [25.2084, 55.2719], color: "blue", }, ], }; // <key>:<validator> // <key>:!<validator> - uses ! for optional // <key> - required non null attribute of any type // Skip all the quotations const schema = `{markers: [{ name:string, location:[:lat,:long], favorite:!b, color }] }`; // customValidators are optional. See built-in validators. const customValidators = { lat: (val) => val >= -90 && val <= 90, long: (val) => val >= -180 && val <= 180, }; let result = verify(json, schema, customValidators); console.log(result); // true json.markers[0].location[0] = 1000; try { verify(json, schema, customValidators); } catch (error) { console.log("error", error); // json.markers.0.location.0: validation failed }
Built-in Validators
Following validators are built in and can be used directly -
{ string : _.isString, s : _.isString, // alias for string number : _.isNumber, n : _.isNumber, // alias for number boolean : _.isBoolean, b : _.isBoolean, // alias for boolean integer : _.isInteger, i : _.isInteger, // alias for integer func : _.isFunction, f : _.isFunction, // alias for func an : (v) => v.match(/^[a-zA-Z0-9]+$/), // alpha-numeric }
Use as a mixin
Since lodash
is a dependency, this method is also exposed as a lodash mixin. Once imported anywhere, you can simply use _.verify
to access it.
_.verify(json, schema, customValidators)
License
MIT © Yusuf Bhabhrawala
以上所述就是小编给大家介绍的《Verify JSON using minimal schema》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Python深度学习
[美] 弗朗索瓦•肖莱 / 张亮 / 人民邮电出版社 / 2018-8 / 119.00元
本书由Keras之父、现任Google人工智能研究员的弗朗索瓦•肖莱(François Chollet)执笔,详尽介绍了用Python和Keras进行深度学习的探索实践,涉及计算机视觉、自然语言处理、生成式模型等应用。书中包含30多个代码示例,步骤讲解详细透彻。由于本书立足于人工智能的可达性和大众化,读者无须具备机器学习相关背景知识即可展开阅读。在学习完本书后,读者将具备搭建自己的深度学习环境、建......一起来看看 《Python深度学习》 这本书的介绍吧!