爸爸在 mvp-deployer 上跑的微信公众号网关,解决"一个公众号只能配一个回调 URL"的硬约束——下游业务方共享公众号能力,但互不感知。
爸爸在 admin Invites tab 颁发 32-hex 邀请码 + appNamePrefix + hostPattern。业务方调 POST /apps/register 拿 secret,只显示一次。
业务方页面调 POST /wx/qr/{app} 拿临时二维码 + token,SSE /wx/poll/{token} 等扫码确认,confirmed 后跳业务方 finalize。
业务方 /api/wx/finalize 用 WX_GATEWAY_SECRET 验 HMAC,5min skew,upsert 自家 User 表,起 session。
业务方调 /internal/wx-qrcode 拿自己专属永久码,贴海报。任何扫码者自动 binding 到本 app,后续消息归属明确。
业务方调 /internal/wx-userinfo 看用户 subscribed 状态,未关注引导关注送积分(配合永久码效果最好)。
网关 fanout 把入向消息派给业务方 endpoint。click 事件按菜单绑定路由,SCAN/subscribe 按 scene_str 路由,业务方写 webhook 接住。
业务方调 /internal/wx-push 推任务完成 / 客服回复 / 订阅模板。越权检查保证只推自己的用户。所有出向落 OutboundMessageLog。