问题:
是否有一种简单的或原生的 javascript 方法来根据 JSON 模式验证 JSON 脚本?
我在 Github 上找到了很多库,但没有原生/简单的解决方案。 EcmaScript 没有这方面的规范吗?并且没有任何浏览器(或 nodejs)有办法在本地验证 JSON 吗?
问题的上下文:
我开发了一个非常复杂的架构。 它应该与一个脚本一起工作,该脚本要求传递给它的 JSON 数据符合模式。
最佳答案
简单地说,不。
有一种东西叫JSON Schema ,这是一份于 2013 年到期的互联网草案。互联网草案是产生 Internet Standard 的第一阶段。 .在 official site 查看更多信息,因为它似乎仍在积极开发中,尽管(据我所知)并未得到广泛使用。
架构示例:
{
"$schema": "http://json-schema.org/schema#",
"title": "Product",
"type": "object",
"required": ["id", "name", "price"],
"properties": {
"id": {
"type": "number",
"description": "Product identifier"
},
"name": {
"type": "string",
"description": "Name of the product"
},
"price": {
"type": "number",
"minimum": 0
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"stock": {
"type": "object",
"properties": {
"warehouse": {
"type": "number"
},
"retail": {
"type": "number"
}
}
}
}
}
将验证此示例 JSON:
{
"id": 1,
"name": "Foo",
"price": 123,
"tags": [
"Bar",
"Eek"
],
"stock": {
"warehouse": 300,
"retail": 20
}
}
关于javascript - 根据 javascript 中的模式验证 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38936442/