解析地址或定位值
解析只需要 Pointer 和表示形式;定位值还需要严格 JSON 文档。请明确选择普通形式或 URI 片段,工具不会根据 # 自动切换。点击运行或按 Ctrl/Cmd+Enter 处理当前输入。
JSON 工具
定位值、拆解路径 token,或按明确的编码规则生成地址。
复制和下载包含完整主结果:选中的 JSON 值、token 数组、生成的 Pointer 或转换后的 token。不包含下方参考信息。
输入仅保留在浏览器内存中,不上传、不保存。
普通形式:空输入选中根节点;/ 选中空键。片段形式:包含 #,使用 UTF-8 百分号编码。空格和换行有意义,输入不会自动去除首尾空白。
请重新运行以更新结果。结果过期时,复制和下载不可用。
用 JSON Pointer 复核 API 响应、Schema 错误或补丁路径所指的位置。地址语法正确,不代表字段一定存在。本工具将解析地址与定位实际文档分成两个操作,帮助你判断是路径写错,还是数据中没有目标。
JSON 指针能区分整个文档、空字段名与数组索引。JSON Pointer 路径查看适合核对单个位置,JSON Pointer 字段定位会读取完整选中值;生成地址则使用显式字符串 token。检查 JSON Pointer 数组项时,索引规则由当前容器类型决定,不能只看 token 像不像数字。
JSON Pointer 用空字符串表示整个文档,用 / 表示名称为空的属性。只有当前值是数组时,0 才被解释为数组索引;在对象中,它只是一个普通键。看清这些区别,才能判断选中的究竟是哪一层。
JSON Pointer 先转义各个 token,再用斜杠连接路径。URI 片段还需要独立的 UTF-8 百分号编码层。查看解码后的 token,就能分清某个斜杠属于字段名,还是用于进入下一级。
解析只需要 Pointer 和表示形式;定位值还需要严格 JSON 文档。请明确选择普通形式或 URI 片段,工具不会根据 # 自动切换。点击运行或按 Ctrl/Cmd+Enter 处理当前输入。
生成接收 JSON 字符串数组:[] 对应根,[""] 对应空键,[0] 因为包含数字而被拒绝。转义和反转义只接收一个原始或编码 token,忽略表示形式,也不读取 JSON 文档。
主结果是选中 JSON、解码 token 数组、生成的地址或转换后的 token。复制和下载导出完整主结果,不附带参考信息。示例和清空先显示替换规模,应用后可撤销一次,恢复输入、选项及原结果。
解析只检查地址语法,不需要目标文档;定位会逐层读取实际数据;生成连接显式字符串 token;转义与反转义转换单个 token。除定位外,其他操作都忽略无关的源文档内容。
普通形式按字面保留 %、+、点、反斜杠、空格和换行。片段以 # 开头,空格及非 ASCII 字符需要有效的 UTF-8 百分号字节。整体百分号解码一次后才分段,随后每个 token 再进行一次波浪号解码。
选中的完整子树保留类型、对象键源顺序,以及大整数、高精度小数、巨大指数和 -0 的原始写法。缺失字段会报错;成功选中的 null、false、0 或空字符串仍是有效结果。
JSON Pointer 结果提供解码 token,以及可用的普通形式和片段形式。参考区域用 JSON 字符串表示显示空文本与控制字符,外围显示引号不属于原始地址。每项参考预览最多 5,000 个字符。
JSON Pointer 精确指向一个位置,按对象键或数组索引逐层定位。JSONPath 可以使用通配符、筛选和递归查询多个节点。本工具只处理 Pointer;它不会把 JSONPath 表达式转换成批量查询。
~0 表示字段名中的字面波浪号,~1 表示字面斜杠。例如键 a/b 的地址为 /a~1b。反转义只进行一次,所以 ~01 得到 ~1,而不是 /;单 token 反转义也不接受整条含裸斜杠的路径。
普通形式下的空输入返回整个文档;URI 片段中的 # 也表示根。/ 则选中名称为空字符串的对象属性。生成时,[] 对应根,[""] 对应空键,二者不能互换。
先看失败 token 的序号。可能是键不存在、数组索引越界或不规范、在数组上使用了 -,也可能是越过标量继续访问。解析语法通过不代表定位一定成功;缺失位置不会用 null 冒充有效结果。
普通地址以 / 分隔每层 token,例如 /users/0/name。字段名内的 ~ 和 / 分别写成 ~0 和 ~1。也可在生成操作中输入 ["users","0","name"]。普通输入不要附带双引号;如果使用以 # 开头的片段,须明确选择 URI 片段模式。
发现地址的行为不符合预期?