JSON Schema 校验器

根据 JSON Schema 规范校验 JSON 数据,支持 Draft-07 / 2020-12

JSON Schema
待校验 JSON 数据

什么是 JSON Schema 校验器?

JSON Schema 是一种用于描述和验证 JSON 数据结构的规范。它定义了 JSON 数据应该符合的格式,包括字段类型、是否必填、取值范围等约束条件。JSON Schema 广泛应用于 API 接口设计、数据校验、配置文件验证等场景。

JSON Schema 校验器的核心功能是根据 JSON Schema 规范 对 JSON 数据 进行格式校验,帮助开发者快速发现数据格式错误。尤其是在开发 RESTful API 或微服务接口时,使用 JSON Schema 可以确保接口请求和响应数据符合预期格式,减少联调成本。

为什么需要 JSON Schema 校验器工具?

在现代 Web 开发中,API 接口的数据格式约定往往依赖文档描述,容易出现前后端理解不一致的问题。使用 JSON Schema 可以:

  • 明确接口约定:用标准化的 Schema 描述接口请求和响应格式
  • 提前发现错误:在开发阶段就能发现数据格式问题,而不是等到联调时
  • 自动化校验:在代码中使用 JSON Schema 库(如 Ajv)实现自动化数据校验
  • 生成文档:基于 JSON Schema 自动生成 API 文档(如 Swagger/OpenAPI)

使用 IqsBot JSON Schema 校验器工具,你可以在浏览器中直接校验 JSON 数据是否符合 Schema 规范,无需安装任何库或工具,快速定位格式错误。

相比其他在线 JSON Schema 校验工具,IqsBot 的核心优势是纯浏览器端运行——你的 JSON Schema 和数据不会上传到任何服务器,完全在本地处理,无需担心数据泄露或隐私问题。

如何使用 IqsBot JSON Schema 校验器工具

基础用法

  1. 粘贴 JSON Schema:将 JSON Schema 定义粘贴到左侧输入框中
  2. 粘贴待校验数据:将需要校验的 JSON 数据粘贴到右侧输入框中
  3. 选择 Schema 版本:选择你使用的 JSON Schema 版本(Draft-07 / 2019-09 / 2020-12)
  4. 点击校验按钮:点击「校验」按钮,工具会显示校验结果
  5. 查看错误信息:如果校验失败,会显示具体的错误路径和原因

高级功能

  • 格式化:点击「格式化」按钮,可以自动格式化 JSON Schema 或数据,便于阅读
  • 示例数据:点击「示例」按钮,可以快速加载示例 Schema 和数据,了解工具用法
  • 多版本支持:支持 JSON Schema Draft-07、2019-09、2020-12 三个主流版本
  • 详细错误提示:校验失败时会显示错误字段的路径(instancePath)和具体原因

使用示例

假设你有以下 JSON Schema:

{
  "type": "object",
  "properties": {
    "name": { "type": "string" },
    "age": { "type": "integer", "minimum": 0 },
    "email": { "type": "string", "format": "email" }
  },
  "required": ["name", "age"]
}

待校验的 JSON 数据为:

{
  "name": "张三",
  "age": -5,
  "email": "invalid-email"
}

点击校验后,会显示以下错误:

  • /age: 期望类型 integer,实际为 -5(小于 minimum: 0)
  • /email: 格式错误,不符合 email 格式

常见问题

Q: 我的 JSON Schema 和数据会上传到服务器吗?

A: 绝对不会。 IqsBot 的所有工具都运行在浏览器本地,数据不会离开你的设备。即使断网,JSON Schema 校验器依然可以正常使用。

Q: 支持哪些 JSON Schema 版本?

A: 支持三个主流版本:

  1. Draft-07(最常用,推荐)
  2. Draft 2019-09
  3. Draft 2020-12

如果你不确定使用哪个版本,建议选择 Draft-07,它是目前最广泛使用的版本。

Q: 支持哪些校验规则?

A: 支持 JSON Schema 核心规范中的主要校验规则,包括:

  • 类型校验(type)
  • 必填字段(required)
  • 字符串长度(minLength、maxLength)
  • 数字范围(minimum、maximum)
  • 数组长度(minItems、maxItems)
  • 数组元素校验(items)
  • 对象属性校验(properties)

Q: 可以用于生产环境的数据校验吗?

A: 本工具主要用于开发和调试阶段。 在生产环境中,建议在代码中引入专业的 JSON Schema 校验库(如 Ajv for JavaScript、jsonschema for Python),实现自动化校验。

Q: 和其他在线 JSON Schema 校验工具相比有什么优势?

A: 核心优势是隐私安全——数据不上传服务器。 其他工具虽然也能校验,但你的 JSON Schema 和数据会经过他们的服务器,存在隐私风险。IqsBot 完全在浏览器本地处理,敏感数据(如用户信息、业务数据)可以放心使用。