DevKit源码

接口响应排查

拿到一段经过 URL 编码或 Base64 编码的接口响应:先还原,再取字段,并确认结构对不对。

本地处理 · 输入不上传

支持的输入

URL 编码的 JSON 响应体Base64 编码的 JSON 快照明文 JSON(直接用单项工具,不必进流程)

得到的产出(全部可复制)

还原并格式化的 JSONJSONPath 提取的目标字段Schema 校验结论(含错误路径)Java 实体类(Base64 路线)
示例数据

先跑一个真实示例

示例为无敏感信息的造造数据,输入与每步输出均用本站真实流程实测核对(2026-09-26)。按你的输入编码选一种; 进入流程页后把示例粘进「流程输入」,点「运行全部」即可复现下面的每一步。

流程输入(整段 URL 编码后的响应体,粘贴这一段)
%7B%22code%22%3A0%2C%22message%22%3A%22ok%22%2C%22data%22%3A%7B%22orderId%22%3A%22SO-2026-0926%22%2C%22status%22%3A%22PAID%22%2C%22amount%22%3A199%2C%22items%22%3A%5B%7B%22sku%22%3A%22DK-MUG%22%2C%22qty%22%3A2%7D%2C%7B%22sku%22%3A%22DK-STICKER%22%2C%22qty%22%3A1%7D%5D%7D%7D

解码后原文:{"code":0,"message":"ok","data":{"orderId":"SO-2026-0926","status":"PAID","amount":199,"items":[{"sku":"DK-MUG","qty":2},{"sku":"DK-STICKER","qty":1}]}}

  1. 第 1 步 · URL 解码解码为 152 B 文本

    响应体被整体百分号编码过,直接当 JSON 解析会在第一个 % 处就失败。先把 %7B%22… 还原成原文。

    第 1 步输出(还原后的响应体)
    {"code":0,"message":"ok","data":{"orderId":"SO-2026-0926","status":"PAID","amount":199,"items":[{"sku":"DK-MUG","qty":2},{"sku":"DK-STICKER","qty":1}]}}
  2. 第 2 步 · JSON 格式化(缩进 2 空格)格式化完成,19 行、265 B

    一行压缩 JSON 没法人工核对字段;解析失败会给出「第 X 行第 Y 列」定位,多余逗号、单引号键这类问题在这一步暴露。

    第 2 步输出
    {
      "code": 0,
      "message": "ok",
      "data": {
        "orderId": "SO-2026-0926",
        "status": "PAID",
        "amount": 199,
        "items": [
          {
            "sku": "DK-MUG",
            "qty": 2
          },
          {
            "sku": "DK-STICKER",
            "qty": 1
          }
        ]
      }
    }
  3. 第 3 步 · JSON Schema 校验校验通过,检查了 2 个节点

    「能解析」不等于「结构正确」。按契约校验必填字段与类型,错误会指到 $.路径。默认 Schema 只约束顶层 code 为 integer;校验自己的契约时,把 Schema 粘进第 3 步参数即可。

    第 3 步默认 Schema:{ "type": "object", "required": ["code"], "properties": { "code": { "type": "integer" } } }

    第 3 步输出(格式化 JSON 原样通过,即流程输出,可复制)
    {
      "code": 0,
      "message": "ok",
      "data": {
        "orderId": "SO-2026-0926",
        "status": "PAID",
        "amount": 199,
        "items": [
          {
            "sku": "DK-MUG",
            "qty": 2
          },
          {
            "sku": "DK-STICKER",
            "qty": 1
          }
        ]
      }
    }

用我的数据处理

进入「接口响应校验」流程页(3 个步骤已配好):粘贴你的响应, 点「运行全部」。数据只在页面内存中传递,离开即清除。

常见失败原因

报错文案均来自真实执行器的实测运行,可直接对照
你会看到的报错出现在原因与下一步
URL 解码失败:存在非法的百分号编码(例如单独的 % 或 %ZZ)URL 编码输入第 1 步响应体里有单独的 % 或不完整的 %XX。可先用「URL 编解码」工具试解码,定位坏字符。
JSON 解析失败:第 1 行第 26 列附近:属性名必须用双引号(常见于多余逗号或使用了单引号/无引号键)两种输入第 2 步解码成功但不是合法 JSON:多余逗号、单引号键、内容被截断都在这里暴露,报错带行列定位,按定位回原文检查。
校验失败 · 1 个错误:$.code [required] 缺少必填字段 / $.code [type] 应为 integer,当前为 stringURL 编码输入第 3 步缺 code 字段或类型不符。默认 Schema 只约束顶层 code;要校验完整契约,把你的 Schema 粘进第 3 步参数再运行。
Base64 中包含非法字符Base64 输入第 1 步Base64 串混入了换行以外的不合法字符,或复制时被截断 / 拼接。重新完整复制一次再试。
匹配 0 项:检查表达式与字段名(区分大小写)Base64 输入第 3 步解码后的顶层没有 order 字段。改第 3 步的 JSONPath 表达式(如 $.result),或先看第 2 步的实际结构。
JSON 转 Java 需要顶层对象;当前结果是标量或数组,请先用 JSONPath 提取出对象Base64 输入第 4 步$.order 是字符串或数组,无法生成有字段的 Java 类。先检查第 3 步的输出,再提取其中的对象。

数据处理说明

示例与你的数据都只在页面内存中逐级传递,不上传服务器,也不会进入 URL 或分享链接(本页不接收任何输入)。 保存在本机浏览器的只有流程配置(localStorage)与运行记录(仅状态、耗时与步骤摘要,不含输入输出); 本场景两条流程均不含密钥步骤。详见本地处理与隐私。

换个方式查结构

响应没经过编码?直接从「JSON 格式化」开始;要核对两份响应的差异,用「JSON 差异比较」。