fix(weixin): 扫码登录二维码真实可扫——前端生成QR(修坏图) + DecodeConfig容忍空config
weixin qrcode_img_content 是微信liteapp HTML页(非图片),后端fetch转base64只得<!doctype>→前端img坏图。
- 后端 login-qr 改返回 qrUrl(qrcode_img_content URL)+qrCode(原始qrcode),去掉坏 qrImage
- 前端用 qrcode 库从 qrUrl 生成真实二维码图片(微信扫https链接即开连接页), 新增 qrcode+@types/qrcode(纯UI依赖)
- DecodeConfig: nil config map 当空map解码(不报错), 否则 pending账号(空config)构建被跳过→未注册→登录端点404
- 测试更新(DecodeConfigNil/admin QR端点断言 qrUrl+qrCode)
- 另有 weixinAccountFor 裸weixin兜底(此前提交 d3b0921) 保证 accountId 命中
- 实测: login-qr 200{waiting, qrUrl=89}, 前端能看到可扫二维码
build/vet/test 全绿, 已部署.
This commit is contained in:
1 parent
d3b0921491
commit
36bd19e997
8 files changed
+394
-29
No files matched your search
@@ -294,8 +294,10 @@ export interface AdminChannelAccount {
|
||||
* directly. status is one of idle|waiting|confirmed|failed. The qrcode scan
|
||||
* identifier is never exposed. */
|
||||
export interface WeixinLoginQRResponse {
|
||||
/** The WeChat QR image URL (qrcode_img_content); the panel renders a QR from it. */
|
||||
qrUrl?: string;
|
||||
qrImage?: string;
|
||||
/** The raw scan identifier (qrcode), used for status polling. */
|
||||
qrCode?: string;
|
||||
status: string;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user