diff --git a/server.js b/server.js index 79bae9d..4abe0f5 100644 --- a/server.js +++ b/server.js @@ -164,16 +164,23 @@ app.post('/api/payment/create', async (req, res) => { } // 创建 UPay 支付订单 + const baseUrl = `${req.protocol}://${req.get('host')}`; + const redirectUrl = `${baseUrl}/success.html?order_id=${order_id}`; + const paymentData = { appId: UPAY_APP_ID, merchantOrderNo: order_id, chainType: '1', // USDT TRC20 fiatAmount: order.total_amount.toFixed(2), fiatCurrency: 'USD', - notifyUrl: `${req.protocol}://${req.get('host')}/api/payment/callback`, - redirectUrl: `${req.protocol}://${req.get('host')}/success.html?order_id=${order_id}` + notifyUrl: `${baseUrl}/api/payment/callback`, + redirectUrl: encodeURIComponent(redirectUrl) }; + console.log('Payment data before signature:', paymentData); + console.log('Original redirectUrl:', redirectUrl); + console.log('Encoded redirectUrl:', paymentData.redirectUrl); + // 生成签名 paymentData.signature = generateUpaySignature(paymentData, UPAY_APP_SECRET);