Neatbo.

JSON Patch 补丁工作区

按 RFC 6902 顺序执行 JSON Patch 操作,核对数组索引变化并下载完整结果。

浏览器本地处理输入原始 JSON + JSON Patch 数组输出补丁后的 JSON 文档两份 UTF-8 JSON,每份最多 1 MiB
  1. 1添加输入
  2. 2调整设置
  3. 3获取结果

工具输入和文件在当前浏览器处理,不会上传。

输入内容

切换工具时在当前标签页临时保留输入。刷新或关闭后清除,较大的结果可能需要重新生成。

⌘ / Ctrl + Enter 运行

执行 JSON Patch 操作数组

操作依次作用于变化中的文档;插入或删除后数组索引随之变化。任一步失败均不输出部分结果。

请粘贴或导入原始 JSON 与 JSON Patch 操作数组。

正在准备处理工具…

开始之前

分别粘贴或导入原始 JSON 文档与 JSON Patch 操作数组。依次执行 add、remove、replace、move、copy 和 test,核对精确结果后下载。

如何使用

  1. 分别粘贴或导入原始 JSON 与 JSON Patch 操作数组。
  2. 按 RFC 6901 编写路径:斜杠写作 ~1,波浪号写作 ~0;插入或删除后数组索引会变化。
  3. 按顺序执行操作,查看失败步骤与路径,核对并下载完整 JSON 结果。

支持范围与限制

两份 UTF-8 JSON 输入各最多 1 MiB。补丁必须是最多 1,000 步的数组;紧凑中间 JSON 最多 2 MiB。拒绝重复键和无效 UTF-8。

数组索引指向前一步执行后的文档。路径或 test 失败时报告步骤与路径,不输出部分结果。不能删除整个根节点,因为这会留下非 JSON 结果。

预览不会改写原文件,也不会发送 HTTP PATCH 请求。

结果 JSON 保留原始数字 token。

操作示例

示例输入

{"items":["a","b"],"ready":false}

JSON Patch 操作数组:
[{"op":"test","path":"/ready","value":false},{"op":"add","path":"/items/-","value":"c"}]
示例参数
{}

示例输出

{
  "items": [
    "a",
    "b",
    "c"
  ],
  "ready": false
}

出现问题时

路径或 test 失败时,页面指出操作序号和路径并停止输出部分结果。修正数组索引或路径后再次执行。

常见问题

删除数组元素后索引如何变化?

每一步都作用于前一步的结果。若要删除数组中的三个元素,可以连续三次删除索引 0,或按原始索引倒序删除。

支持哪些操作?

支持 RFC 6902 的 add、remove、replace、move、copy 和 test。不能删除整个根节点,因为结果将不再是 JSON 文档。

会发送 PATCH 请求吗?

不会。两份输入与结果只在浏览器中处理;下载结果后可另行用于自己的 API 流程。

文档与延伸阅读

相关工具