数据口径与可信度
这套文档由静态源码解析生成,未启动任何服务、未修改任何业务代码。以下是每条信息的来源与不确定边界。
1. 数据从哪来
| 接口契约(路径/方法/渠道/参数/DTO 字段/必填/枚举/注释/@Deprecated/免鉴权) |
tools/parse_java.py 直接解析 jxxx-dscp + chaos + chaos-component 源码。
这是权威来源,与代码同步;旧站 HTML 里与源码不一致的部分以源码为准(差异见规范体检 §4)。 |
| 调用链 / 涉及数据表 / 可能抛出的错误码 / 免鉴权标记 |
tools/chains.py 遍历方法体:Controller→Service(Impl)→Mapper→实体 @TableName,
并抓 BeanUtils.map 转换与 ResCode.X.toException() 抛错。与旧站结果交叉比对,表集合相似度 0.94。 |
| 字段→表列映射、内联注释、示例 |
仍来自旧站解析(tools/extract.py 反解析),卡片里折叠并标注来源;这部分是纯补充信息,不影响契约正确性。 |
| 业务域 / 子域 | tools/taxonomy.py(人工维护的映射,改它等于改目录结构) |
| 在用状态 / 调用点 | tools/scan_frontends.py 直接扫描 7 个前端仓库源码 |
| 可导出 OpenAPI 3.0 | python3 tools/to_openapi.py → data/openapi.json(1661 路径),
可直接导入 Apifox / Postman / 生成 mock;内部信息在 x-* 扩展字段里。旧站只有 HTML,无法被工具消费。 |
| 环境主机 / 渠道前缀 / 响应包装 | tools/build.py 顶部常量,一处修改全站生效 |
2. 重新生成
cd api-all
python3 tools/extract.py # legacy/ HTML → data/apis_from_html.json(补充信息)
python3 tools/scan_frontends.py # 7 端源码 → data/frontends_scan.json
python3 tools/parse_java.py # 后端源码 → data/apis.json(权威契约 + 与旧站差异)
python3 tools/taxonomy.py # 包名 → 业务域
python3 tools/scan_deprecated.py# 后端 @Deprecated 标记(可选)
python3 tools/to_openapi.py # 导出 data/openapi.json 给 Apifox/Postman
python3 tools/build.py # 渲染 v2/
python3 tools/check.py # 一致性校验(不一致返回非 0)
3. 诚实性边界
- 示例请求/响应是按类型自动生成的结构参考,不是真实样本;
- Body 类型若在依赖 jar 内或为 Map/基础类型,字段无法展开,卡片里会写明原因;
- 「本次扫描未发现调用」只表示 7 个前端源码里没有该路径字面量,不代表可以下线;
- 生产主机未确认,因此 v2 不再逐接口展示 pro 行;
- 错误码来自源码常量类
ResCode / ChaosRes(已入库为错误码字典);
管理后台 system_error_code 表尚未并入(需要 DBA 导出),两边口径可能有差异;
- 接口「处理逻辑」由调用链 + 操作日志注解 + 内联注释归纳,未编造业务细节。
4. v2 相对旧版改了什么
| 维度 | 旧版 | v2 |
| 信息层级 | 9 个信息块 6 块常开,一个接口 2 屏以上 | 契约视图默认,实现细节/示例折叠,一屏 2–3 个接口 |
| 重复内容 | 环境 URL 表 1405 份、外层包装 1405 份、"无参数"占位 1363 份 | 各写一次(调用手册),接口页只给最终路径 |
| 导航 | 37 个 Java 包名(含 xuchao / common / industry) | 14 个业务域 → 子域,openapi 按对接方展开 |
| 页面体积 | 最大 2.4MB / 6.8 万标签 / 单页 248 卡片 | 按域分页,每页 ≤ 46 卡片 |
| 数字一致性 | index 与模块页三处不一致 | 全部由 build.py 计算 + check.py 校验 |
| 搜索 | 路径/摘要/模块,上限 40 | 增加 字段名 / 表名 / 控制器 / 业务域,带权重排序 |
| 反查 | 无 | 数据表 → 接口、字段/DTO → 接口 |
| 在用判定 | 二态,780 个「未使用」中 45 个实际有调用 | 三态 + 证据(文件:行)+ 误判清单 |