企业微信 qiwei callback 告警排查包
针对 2026-05-16 企业微信反复出现的 api/qiwei/callback / 控制器不存在: app\\api\\controller\\Qiwei 告警,当前结论是:store 的接口契约里有该路径,但代码和主要部署分支没有 Qiwei 控制器,也没有显式 qiwei 路由。
关键发现
接口契约存在
docs/apifox/store.openapi.json 记录了 GET /api/qiwei/callback 和 GET /api/qiwei/callbackQW。
代码入口缺失
application/api/controller/Qiwei.php 在当前工作区和主要部署分支均缺失。
路由未显式定义
application/route.php 没有 api/qiwei 路由,ThinkPHP 会按默认控制器解析并报错。
可能原因
| 优先级 | 原因 | 验证动作 |
|---|---|---|
| P0 | 企业微信后台配置了尚未实现的 URL。 | 核对企业微信服务商/企业后台回调 URL 是否指向 store 域名的 /api/qiwei/callback。 |
| P0 | Apifox 契约已导入,但实现未落地或未合并部署。 | 如业务需要,创建任务分支实现 Qiwei.php 并同步签名 fixture 测试。 |
| P1 | URL 应指向其他服务,但配置到了 store。 | 核对企业微信后台域名、nginx 转发和部署清单。 |
可执行命令
cd /Users/jack/code/010-cpt/008-zhct/zhctprompt ./work_store/2026-05-16-qiwei-callback-alert-investigation/verify-qiwei-callback.sh
本地 Docker 已启动且确认是测试环境时,可加 RUN_HTTP=1 BASE_URL=http://127.0.0.1 做只读 HTTP 探测。不要对生产域名执行。
建议
不需要回调:从企业微信后台删除或修正 URL,等待重试周期后确认告警停止。
需要回调:基于 store 最新 master 新建任务分支,实现 Qiwei 控制器、企业微信签名校验、GET URL 验证和异常响应测试。密钥只放环境配置,不进入仓库。