This commit is contained in:
2026-06-15 10:38:54 +08:00
parent 95847e146e
commit 8091778d68
+9 -6
View File
@@ -120,12 +120,15 @@ async def wechat_callback(request: Request, db: AsyncSession = Depends(get_db)):
logger.error("WeChat payment config missing for callback")
return {"code": "SUCCESS", "message": "OK"}
# 从请求头获取必要信息
headers = dict(request.headers)
timestamp = headers.get("Wechatpay-Timestamp", "")
nonce = headers.get("Wechatpay-Nonce", "")
signature = headers.get("Wechatpay-Signature", "")
serial_no = headers.get("Wechatpay-Serial", "")
# 从请求头获取必要信息(不区分大小写)
headers = {k.lower(): v for k, v in dict(request.headers).items()}
timestamp = headers.get("wechatpay-timestamp", "")
nonce = headers.get("wechatpay-nonce", "")
signature = headers.get("wechatpay-signature", "")
serial_no = headers.get("wechatpay-serial", "")
# 记录调试信息
logger.debug(f"WeChat callback headers - timestamp:{timestamp}, nonce:{nonce[:10] if nonce else ''}, serial_no:{serial_no}")
# 验证签名:使用平台公钥验证
if public_key and serial_no: