From d4c9568673f7bbfa939c353e87116a71bd41f12f Mon Sep 17 00:00:00 2001 From: yumoqing Date: Thu, 16 Jul 2026 17:40:20 +0800 Subject: [PATCH] fix(wechat): use wx.tenpay.com/f2f for web payment, weixin:// is not browser-openable --- wwwroot/recharge.dspy | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/wwwroot/recharge.dspy b/wwwroot/recharge.dspy index a3944c1..7e6cfa2 100644 --- a/wwwroot/recharge.dspy +++ b/wwwroot/recharge.dspy @@ -1,18 +1,20 @@ params_kw.amount = float(params_kw.amount) debug(f'recharge.dspy: {params_kw=}') try: - url = await create_payment(request, params_kw) + code_url = await create_payment(request, params_kw) if params_kw.provider == 'transfer': return { "widgettype":"urlwidget", "mode":"replace", "target":"app.sage_main_content", - "options":{"url": url} + "options":{"url": code_url} } + # weixin://wxpay/bizpayurl?pr=xxx → https://wx.tenpay.com/f2f?pr=xxx + pay_url = code_url.replace('weixin://wxpay/bizpayurl', 'https://wx.tenpay.com/f2f') return { "widgettype":"NewWindow", "options":{ - "url": url, + "url": pay_url, "height": "100%", "width":"100%" }