Files
digital-psychology/.ai/adr/0008-go-wechat-consult-gateway.md
T
jackyu66gitandCursor 7155b8b53a feat(api): 接入微信登录并原生实现咨询域(ECR-049/050)
小程序可在 Go 上完成微信手机号登录、测评、预约和下单,不再反代 Java。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 00:26:29 +08:00

1.2 KiB
Raw Blame History

ADR-0008 — Go 为唯一用户后台,咨询域过渡反代

  • Status: Accepted
  • Date: 2026-09-14
  • Tags: identity, miniprogram, consult, gateway

Context

愈心谷 C 端同时打两套后台:咨询/测评在 Java + MySQL,愈心魔方在 Go + PostgreSQL。
wx.logincode 只能用一次,无法先后换两套 token。小程序需要单一身份与单一请求入口。

Decision

  1. Go + PostgreSQL 是唯一用户身份源。 微信 openid / 手机号写在 users
  2. Java 过渡期为被调方Go 用 openid/phone 调内网 issue-mini-app 换 Java Redis token,并反代 /app-api/admin-api
  3. 咨询业务表本 ADR 不迁;支付与档期另开 ECR。
  4. Admin 登录独立,不走本决策。

Consequences

  • 小程序只配置 Go 域名(现网经 /psy/api/ 反代)。
  • 下线 Java 必须另开 ECR,并先迁支付。
  • 历史魔方账密用户按手机号合并到 wx_openid

Alternatives considered

  • 只做 SSO、双库长期并存:否决(用户要求合库合服务)。
  • 以 Java 吸收魔方:否决(栈已锁定 Go + PG)。
  • 客户端双 token:否决(code 单次使用,且拖住前端统一接入)。