Files
frontend-miniapp/doc/h5-guide-api-audit-2026-08-04.md
lyf 2edb6bd9f2
Some checks failed
CI / verify (push) Has been cancelled
适配H5讲解统一详情接口
2026-08-05 14:52:36 +08:00

4.4 KiB
Raw Blame History

H5 讲解接口只读审计

  • 审计时间2026-08-04Asia/Shanghai
  • 目标:https://guide.whaoyue.com:4433/app-api/gis/guide
  • 认证:无。五个正式 GET 接口均可匿名访问。
  • 数据安全:仅执行读取请求;未调用删除、覆盖、批量修改或其他写操作。

接口契约

接口 方法 必填项 可选项 预期响应
/catalog/halls GET lang data 为展厅数组
/catalog/halls/{hallId}/outlines GET hallId lang data 为一级单元数组
/catalog/outlines/{outlineId}/stops GET outlineId lang data 为讲解点摘要数组
/catalog/halls/{hallId}/stops/page GET hallId pageNopageSizelang data.listdata.total 分页对象
/stops/{stopId} GET stopId versionstandard / extended,缺省 standard 统一详情及当前版本的 textVariantsaudioTracks

执行记录

接口 场景 / 关键参数 预期 实际(状态码 / 业务 code / 摘要 / 耗时) 结论
展厅列表 正常:lang=zh-CN 8 个展厅摘要 200 / 0 / array:8 / 263ms 通过
展厅列表 缺少可选 lang 使用默认语言并返回数组 200 / 0 / array:8 / 115ms 通过
展厅列表 非法语言:lang=ja-JP 文档未明确错误口径 200 / 0 / array:8 / 108ms 通过;服务端宽松接受,需补充文档
一级单元 正常:hallId=715792102100832258lang=zh-CN 一级单元数组 200 / 0 / array:3 / 95ms 通过
一级单元 错误非数值 hall ID 参数错误 200 / 400 / 参数类型错误 / 110ms 通过
单元讲解点 文档示例单元:outlineId=7467940240901013505 单元讲解点数组 200 / 0 / array:0 / 97ms 通过;该一级单元当前无讲解点
单元讲解点 详情所属单元:outlineId=865546627916591104 包含当前讲解点的数组 200 / 0 / array:39 / 132ms 通过
单元讲解点 错误非数值 outline ID 参数错误 200 / 400 / 参数类型错误 / 113ms 通过
展厅讲解点分页 正常:pageNo=1&pageSize=20&lang=zh-CN 分页摘要 200 / 0 / list:20,total:39 / 197ms 通过
展厅讲解点分页 缺少可选分页参数 默认 pageNo=1&pageSize=20 200 / 0 / list:20,total:39 / 101ms 通过
展厅讲解点分页 边界:pageNo=999&pageSize=100 空页 200 / 0 / list:0,total:39 / 171ms 通过
展厅讲解点分页 非法:pageNo=-1&pageSize=0 文档未明确错误口径 200 / 0 / list:20,total:39 / 113ms 通过;服务端回退默认值
展厅讲解点分页 超文档上限:pageSize=101 文档声明最大 100 200 / 0 / list:39,total:39 / 120ms 偏差:服务端未限制
统一详情 正常:stopId=865546647764037632&version=standard 标准版完整详情、正文与音轨 200 / 0 / version:standard,textVariants:3,audioTracks:5,recommendedTrackCode:standard.zh-CN.female / 150ms 通过
统一详情 版本边界:version=extended 拓展版当前版本详情 200 / 0 / version:extended,textVariants:0,audioTracks:0 / 107ms 通过;该讲解对象暂无拓展版内容
统一详情 缺少可选版本 standard 返回 200 / 0 / version:standard,textVariants:3,audioTracks:5 / 110ms 通过
统一详情 非法版本:version=unsupported 业务错误,不静默降级 200 / 1020005006 / 讲解点详情版本仅支持 standard / extended / 118ms 通过
统一详情 非数值错误 ID 参数错误 200 / 400 / 参数类型错误 / 93ms 通过
统一详情 数值但不存在 ID999999999999999999 GUIDE_STOP_NOT_EXISTS 业务错误 200 / 1020005000 / 导览讲解点不存在 / 117ms 通过

数据关联结论

展厅的 3 个一级单元当前均为 stopCount=0,而详情讲解点 865546647764037632 实际属于单元 865546627916591104,该单元可返回 39 条讲解点。这说明一级单元目录与讲解点关联仍存在后端数据不一致。H5 主流程保持为 展厅 -> 讲解对象 -> 统一详情,不以一级单元作为主导航。

统一详情即使参数错误也使用 HTTP 200,客户端必须结合业务 code 判断结果。语言和性别均由当前版本的详情数组在本地切换;切换标准版与拓展版时才重新请求统一详情并传入 version