from flask_cors import CORS from flask_socketio import SocketIO from .config import Config # 初始化扩展 cors = CORS() socketio = SocketIO(path='vsc-like-ws',cors_allowed_origins="*",max_payload_size=52428800, async_mode="eventlet") # 不直接传 app session_paths = {} def init_extensions(app): cors.init_app(app, resources={r"/*": {"origins": "*"}}, supports_credentials=True) socketio.init_app(app, cors_allowed_origins="*", max_payload_size=52428800, async_mode="threading") app.extensions["session_paths"] = session_paths def register_namespaces(app): """把所有 Socket.IO namespaces 注册到 socketio""" # 延迟导入以避免循环 from .sockets.terminal_service import VSCLikeNameSpace, socketio socketio.on_namespace(VSCLikeNameSpace('/vsc-like'))