This commit is contained in:
薇薇安 2026-01-23 20:47:11 +08:00
parent 211ef38ee9
commit 8d3991c74c

View File

@ -71,6 +71,21 @@ class BinanceClient:
logger.info(f"BinanceClient.__init__: 使用 API Key {key_display}, testnet={testnet}, explicit_key={self._explicit_api_key}, explicit_secret={self._explicit_api_secret}")
else:
logger.warning("BinanceClient.__init__: API Key 为空!")
# 初始化 Redis 缓存(必须在 __init__ 中初始化,不能依赖 _refresh_api_credentials
try:
self.redis_cache = RedisCache(
redis_url=config.REDIS_URL,
use_tls=config.REDIS_USE_TLS,
ssl_cert_reqs=config.REDIS_SSL_CERT_REQS,
ssl_ca_certs=config.REDIS_SSL_CA_CERTS,
username=config.REDIS_USERNAME,
password=config.REDIS_PASSWORD
)
except Exception as e:
logger.warning(f"初始化 Redis 缓存失败: {e},某些功能可能不可用")
self.redis_cache = None
self.client: Optional[AsyncClient] = None
self.socket_manager: Optional[BinanceSocketManager] = None
self._symbol_info_cache: Dict[str, Dict] = {} # 缓存交易对信息
@ -127,16 +142,7 @@ class BinanceClient:
except Exception as e:
logger.debug(f"从配置管理器刷新API密钥失败: {e},使用现有值")
# 初始化 Redis 缓存
self.redis_cache = RedisCache(
redis_url=config.REDIS_URL,
use_tls=config.REDIS_USE_TLS,
ssl_cert_reqs=config.REDIS_SSL_CERT_REQS,
ssl_ca_certs=config.REDIS_SSL_CA_CERTS,
username=config.REDIS_USERNAME,
password=config.REDIS_PASSWORD
)
# 注意redis_cache 已在 __init__ 中初始化,这里不需要再次初始化
async def connect(self, timeout: int = None, retries: int = None):
"""