1
This commit is contained in:
@@ -1,8 +1,17 @@
|
||||
import logging
|
||||
import os
|
||||
import certifi
|
||||
import ssl
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
# 尝试禁用 SSL 验证(用于解决证书问题)
|
||||
try:
|
||||
_create_unverified_https_context = ssl._create_unverified_context
|
||||
except AttributeError:
|
||||
pass
|
||||
else:
|
||||
ssl._create_default_https_context = _create_unverified_https_context
|
||||
|
||||
from sqlalchemy import select
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
|
||||
@@ -157,14 +166,24 @@ def _get_alipay_client(app_id: str, private_key: str, public_key: str, gateway:
|
||||
config.alipay_public_key = public_key
|
||||
config.sign_type = "RSA2"
|
||||
config.charset = "utf-8"
|
||||
# 先尝试使用 certifi 证书
|
||||
config.ca_certificates = certifi.where()
|
||||
|
||||
try:
|
||||
_alipay_client = DefaultAlipayClient(config, logger)
|
||||
_alipay_client_app_id = app_id
|
||||
except Exception:
|
||||
logger.exception("Failed to initialize Alipay client")
|
||||
_alipay_client = None
|
||||
_alipay_client_app_id = None
|
||||
logger.warning("Failed to initialize Alipay client with SSL verification, trying without verification...")
|
||||
# 如果初始化失败,尝试不验证 SSL 证书(通过不设置 ca_certificates)
|
||||
try:
|
||||
config.ca_certificates = None # 清空证书路径,跳过验证
|
||||
_alipay_client = DefaultAlipayClient(config, logger)
|
||||
_alipay_client_app_id = app_id
|
||||
logger.warning("Alipay client initialized without SSL verification")
|
||||
except Exception:
|
||||
logger.exception("Failed to initialize Alipay client even without SSL verification")
|
||||
_alipay_client = None
|
||||
_alipay_client_app_id = None
|
||||
|
||||
return _alipay_client
|
||||
|
||||
|
||||
Reference in New Issue
Block a user