1
This commit is contained in:
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user