Schema 数组约束专题

JSON Schema not / contains 数组约束调试和发布前校验工具

面向 not 禁用组合、contains 数组成员约束、生产测试模式拦截、角色数组校验和 API 发布前 Schema 复核的本地排查流程。

直接答案

当 Schema 需要禁止某种字段组合,或要求数组里至少有一个满足条件的对象时,用 not 和 contains 表达规则,再用本地 JSON Schema 校验查看错误 keyword 与路径。not 适合禁止 production + testMode=true 这类危险组合;contains 适合要求 roles 中至少存在 active admin 或 features 中至少包含 billing。

覆盖的长尾搜索词
JSON Schema notJSON Schema contains数组约束调试contains 数组成员not 禁用字段组合production testMode SchemaJSON Schema array constraint

适合哪些查看场景

禁止 production 与 testMode=true 同时出现

确认 features 数组缺少 billing

检查角色数组是否至少有一个 active admin

定位 contains 没匹配到任何数组成员

发布前复核禁用组合和数组成员规则

推荐查看路径

  1. 先格式化 Schema 和 JSON 样本
  2. 把禁止组合写进 not 并补 required
  3. 把数组成员要求写进 contains
  4. 运行 Schema 校验查看 keyword 和 instancePath
  5. 用 JSONPath、Pointer 和 Deep Diff 复核数组结构是否变化

相关工具入口

面向 not 禁用组合、contains 数组成员约束、生产测试模式拦截、角色数组校验和 API 发布前 Schema 复核的本地排查流程。

JSON Schema 校验查看

用 JSON Schema 校验 JSON 数据,定位 required 缺失、additionalProperties 未知字段、dependentRequired 依赖必填、allOf / anyOf / oneOf 分支冲突、not 禁用组合、contains 数组成员缺失、uniqueItems 数组重复、patternProperties 动态键名、format 错误、类型漂移、数组层级和错误路径。

JSON SchemarequiredadditionalProperties

JSON Schema 生成查看

根据 JSON 示例推断对象结构,生成可读的 JSON Schema 初稿,适合接口、配置和文档整理。

JSON Schema接口开发

JSON 键路径提取查看

提取 JSON 对象中的键路径、节点类型和层级深度,支持点路径与 JSON Pointer 输出,适合接口字段盘点、数组结构回归、映射对齐和导入前结构检查。

JSON键路径字段盘点

JSON Pointer 路径查看

用 JSON Pointer 精确查看 JSON 中某个字段、数组项或根节点,适合接口响应、字段改名新路径、配置定位和文档核对。

JSON PointerJSON路径

JSONPath 解析查看

用 JSONPath 表达式查看 JSON 中匹配的数据、数量和路径,支持数组通配、递归查找和 ?(@.status=="paid") 这类条件筛选,适合接口响应、日志数据、字段改名或数组结构变化后的空结果排查。

JSONPathJSON接口

JSON 深度对比查看

逐层查看两个 JSON 的新增、删除、类型变化和值变化,适合接口版本差异、字段删除影响、数组元素结构回归、配置和结构化数据排查。

JSONDiff深度对比

JSON 格式化查看

格式化、压缩并校验 JSON 文本,快速查看结构、错误位置、压缩结果和接口返回内容是否正确。

JSON格式化校验

常见问题

当 Schema 需要禁止某种字段组合,或要求数组里至少有一个满足条件的对象时,用 not 和 contains 表达规则,再用本地 JSON Schema 校验查看错误 keyword 与路径。not 适合禁止 production + testMode=true 这类危险组合;contains 适合要求 roles 中至少存在 active admin 或 features 中至少包含 billing。

not 和 contains 分别解决什么问题?

not 用来禁止某个子 Schema 匹配,常见于危险字段组合;contains 用来要求数组中至少有一个元素满足指定条件。

这些示例会上传接口数据吗?

不会。Schema 校验在浏览器本地执行,sitemap 只收录短 demo 示例,不收录用户输入。

继续查看这些专题

把高频工具需求整理成可收录、可引用、可转发的专题页,帮助用户快速找到一组相关工具,也帮助搜索引擎和 AI 理解 Chakan 的工具能力。

数据处理Must Do

CSV 数据清洗、筛选和导入前检查工具

围绕 CSV 列提取、表头规范化、行过滤、类型推断、Schema 草稿和导入前检查的工具集合。

打开专题
数据处理Must Do

JSON 接口字段盘点、路径提取和映射检查工具

面向接口返回、嵌套 JSON、字段映射和 Schema 校验的结构化工具入口。

打开专题
数据处理Must Do

JSON 数据转换、格式化和接口排错工具

把 CSV、XML、YAML、INI、TOML、JSONL 转 JSON 后,再进行格式化、路径提取和差异排查的工具路径。

打开专题