From 8543447df2d74f0c701c39a558470840b353e932 Mon Sep 17 00:00:00 2001 From: box-tool-f6b714fa Date: Wed, 11 Nov 2026 18:50:47 +0000 Subject: [PATCH] =?UTF-8?q?feat(link=5Fview):=20=E5=8F=96=E8=BA=AB?= =?UTF-8?q?=E4=BB=BD=E7=A5=A8=E6=8D=AE=20+=20=E6=8E=A5=E6=94=B6=20H5=20?= =?UTF-8?q?=E5=88=86=E4=BA=AB=E5=8D=A1=E7=89=87=E4=BF=A1=E6=81=AF=EF=BC=88?= =?UTF-8?q?v5=EF=BC=8C2026-11-12=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 打开前 wx.login → box_app /api/mp/public/link-ticket 换票据,web-view 打开 <地址>#ticket=<票据>; 取票失败或 3 秒超时则打开不带票据的地址(H5 照旧公众号授权)。取票期间显示「正在进入…」,src 只设一次。 - 接收 H5 postMessage 的 {action:'share', imageUrl, title}:转发卡片用 H5 给的图(仅 https)和标题, 没收到时退回原默认标题和微信截图。转发路径仍只带 t/k,不带票据。 - 规格:box_app docs/h5-auth-standard.md 第八节;链接/福利系统 docs/mp-share-card.md。 Co-Authored-By: AI 助手 --- pages/annex/link_view/index.vue | 79 +++++++++++++++++++++++++++++---- 1 file changed, 71 insertions(+), 8 deletions(-) diff --git a/pages/annex/link_view/index.vue b/pages/annex/link_view/index.vue index fe704f1..a956522 100644 --- a/pages/annex/link_view/index.vue +++ b/pages/annex/link_view/index.vue @@ -7,12 +7,17 @@ 2) 转发卡片: /pages/annex/link_view/index?t=l&k=g8I0yMDYzlCu 只做三件事:解析 scene 或转发参数 → 拼地址 → web-view 打开;解析不出来显示兜底屏。 + 2026-11-12 起再加两件(v5,box_app/docs/h5-auth-standard.md 第八节): + a) 打开前用 wx.login 换身份票据,拼成 <地址>#ticket=<票据>;取票失败或 3 秒超时 → 打开不带票据的地址(H5 照旧公众号授权)。 + b) 接收 H5 postMessage 的 {action:'share', imageUrl, title},用作转发卡片的图和标题(docs/mp-share-card.md)。 ⚠️ TARGETS 必须和 box_app backend/app/services/link_wxacode_serv.py 的同名表一致 (短键、地址前缀、标识规则)。改这张表 = 两端一起改 + 小程序发版; 码里只有标识,所以发版后旧码照常可用。 - ⚠️ 不注入任何小程序身份(openid/unionid),也不反查分享图/标题:两家都走自己的 - 公众号网页授权(方案第五节),所以本页**不引入** webviewHost / shareCard mixin。 + ⚠️ 不在网址里放明文 openid/unionid:身份只走 hash 里的签名票据,由 H5 自己验签(影子模式期间仍以公众号授权为准)。 + 本页**不引入** webviewHost / shareCard mixin:分享图/标题只认 H5 发来的消息,不反查 box_app。 + ⚠️ 取票接口 https://mp.yizhezhe.com/api/mp/public/link-ticket:该域名已在小程序 request 合法域名里(shareCard 同用)。 + ⚠️ 转发路径只带 t/k,绝不带票据(票据一次性、带身份)。 ⚠️ 本页路径必须等于 box_app 生产 .env 的 LINK_WXACODE_PAGE(默认就是这个路径), 改路径要同步改那边,否则已生成的码全部扫不进页面。 ⚠️ web-view 打开的域名必须在小程序后台「业务域名」里(方案 4.4): @@ -20,7 +25,8 @@ -->