我是Javascript和JSON Schema的新手,我有一个问题如何让它运行...我创建了一个Schema,我有一个JSON Schema验证器here和一个JSON对象。我被告知要编写一个Javascript函数,它接受一个JSON模式和一些JSON,然后返回验证是否成功(如果没有,哪个键有问题)。
我不知道我是否可以使用控制台在HTML上测试它(只需使用模式,JSON对象和函数调用.js文件),如果我必须将node.js用于此类型使用JSON或...的任务到目前为止我已经安装了lib并且我已经创建了一个HTML来“测试”它;但控制台上的错误不适合无效的架构或其他东西。有人可以给我一些指导吗?谢谢!
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript" src="schema.js"></script>
</body>
</html>
答案 0 :(得分:1)
要运行一些快速测试,阻力最小的路径是a)在您的Web控制台中运行它(例如在Chrome中打开开发人员工具)或b)创建一个文件(例如,&#39; test.js& #39;)并在命令行上运行node test.js
:
var testSchema = {
name: {
type: 'string'
},
age: {
type: 'number'
}
};
var testData = {
name: 'john',
age: 47
};
function checkAgainstSchema(data, schema) {
return Object.keys(data).every(function(key) {
return typeof testData[key] === schema[key].type;
});
}
checkAgainstSchema(testData, testSchema); // => true
很难提供比您在问题中提供的信息量有限的信息更多的信息。也许上面的内容会给你一些启动。
仅供参考,上述内容并不是您所要求的强有力的实施方式,而只是您所要求的一个简单示例。
答案 1 :(得分:1)
你也可以使用tonicdev.com来玩你曾经使用的ajv(或任何其他npm包)。
答案 2 :(得分:0)
有一个模块可以根据JSON模式解析和验证JSON数据:tv4。如果您正在使用node.js,则可通过
获取npm install tv4