feat: add official wechat session exchange boundary

This commit is contained in:
2026-09-18 15:27:02 +08:00
parent 5e71b89e95
commit de8f989083
3 changed files with 79 additions and 2 deletions

View File

@@ -158,6 +158,10 @@ POST /api/admin/uploads/presign
## 5. 文件上传流程
## 5.1 微信客户会话
小程序调用 `wx.login` 获取临时 `code`,提交到 `/api/customer/session/wechat`。服务端使用微信官方 `jscode2session` 接口换取 OpenID 和 session key并在服务端建立 `CustomerUser` 映射和登录态。当前代码将微信调用封装在 `WechatAuthService`,使用 Node 原生 `fetch`,不引入第三方微信 SDK后续订单接口必须从服务端登录态解析当前 OpenID不能由客户端提交或选择 `customer_user_id`。生产实现不得把 OpenID 或 session key 返回给小程序,应改为 HttpOnly 会话 Cookie 或短期签名令牌。
1. 后台请求上传凭证。
2. API 校验管理员权限和文件元数据。
3. 前端直接上传对象存储。