如何对JSON文件运行javascript JSON模式

How to run a javascript JSON Schema to a JSON file

本文关键字:JSON javascript 模式 运行 文件      更新时间:2023-09-26

我是Javascript和JSON模式的新手,我有一个问题是如何让它运行。。。我已经创建了一个Schema,这里有一个JSON Schema验证器和一个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>

要运行一些快速测试,阻力最小的路径是a)在web控制台中运行它(例如Chrome中的开放开发工具)或b)创建一个文件(比如"test.js")并在命令行上运行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

由于你在问题中提供的信息数量有限,很难提供更多的信息。也许以上内容会让你有所收获。

仅供参考,以上内容并不是您所要求的内容的有力实现,而是您所要求内容的一个简单示例。

您还可以使用tonicdev.com来玩您使用过的ajv(或任何其他npm包)。

有一个模块可以根据JSON模式解析和验证JSON数据:tv4。如果你使用node.js,它可以通过获得

npm install tv4