From b6b0ca3dbd8899b7ba0f28f88bd316067dda91ef Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sat, 2 May 2026 23:20:49 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20H5=20=E5=85=AC?= =?UTF-8?q?=E4=BC=97=E5=8F=B7=E5=BE=AE=E4=BF=A1=20JSSDK=20=E7=AD=BE?= =?UTF-8?q?=E5=90=8D=20URL=20=E9=94=99=E7=94=A8=20location.origin=20?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=20wx.config=20invalid=20signature=EF=BC=8C?= =?UTF-8?q?=E6=94=B9=E7=94=A8=20location.href.split('#')[0]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sheep/libs/sdk-h5-weixin.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/sheep/libs/sdk-h5-weixin.js b/sheep/libs/sdk-h5-weixin.js index c5537803..255b72be 100644 --- a/sheep/libs/sdk-h5-weixin.js +++ b/sheep/libs/sdk-h5-weixin.js @@ -30,8 +30,9 @@ export default { } // 调用后端接口,获得 JSSDK 初始化所需的签名 - const url = location.origin; - const { code, data } = await AuthUtil.createWeixinMpJsapiSignature(url); + // 微信要求签名 URL 与当前页面去掉 hash 后完全一致;不能直接用 location.origin(会丢子路径与 query) + const signUrl = location.href.split('#')[0]; + const { code, data } = await AuthUtil.createWeixinMpJsapiSignature(signUrl); if (code === 0) { jweixin.config({ debug: false, @@ -57,7 +58,11 @@ export default { configSuccess = true; jweixin.error((err) => { configSuccess = false; - console.error('微信 JSSDK 初始化失败', err); + console.error('[wx-jssdk] config error', err, { + href: location.href, + signUrl, + data, + }); $helper.toast('微信JSSDK:' + err.errMsg); }); jweixin.ready(() => {