修复回消息
This commit is contained in:
@@ -71,9 +71,7 @@ class WebSocketManager:
|
||||
def connect_backend(self, token: str) -> bool:
|
||||
"""连接后端WebSocket"""
|
||||
try:
|
||||
# 🔥 重置清理标记,准备下次重连检测
|
||||
if hasattr(self, '_cleared'):
|
||||
delattr(self, '_cleared')
|
||||
|
||||
|
||||
# 1 保存token到配置
|
||||
try:
|
||||
@@ -147,12 +145,13 @@ class WebSocketManager:
|
||||
def _handle_platform_login(self, platform_name: str, store_id: str, cookies: str):
|
||||
"""处理平台登录请求"""
|
||||
try:
|
||||
# 🔥 检查并清理旧连接(重连后首次登录时)
|
||||
if not hasattr(self, '_cleared') and self.platform_listeners:
|
||||
self._log(f"🔄 检测到后端重连后首次登录,清理 {len(self.platform_listeners)} 个旧连接", "INFO")
|
||||
self.platform_listeners.clear()
|
||||
self.connected_platforms.clear()
|
||||
self._cleared = True
|
||||
# 🔥 检查并清理当前店铺的旧连接
|
||||
store_key_pattern = f":{store_id}" # 匹配 "平台名:store_id" 格式
|
||||
keys_to_remove = [key for key in self.platform_listeners.keys() if key.endswith(store_key_pattern)]
|
||||
if keys_to_remove:
|
||||
self._log(f"🔄 检测到店铺 {store_id} 重连,清理 {len(keys_to_remove)} 个旧连接", "INFO")
|
||||
for key in keys_to_remove:
|
||||
self.platform_listeners.pop(key, None)
|
||||
|
||||
# 平台名称映射
|
||||
platform_map = {
|
||||
|
||||
Reference in New Issue
Block a user