18 lines
836 B
Python
18 lines
836 B
Python
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=5242880, async_mode="eventlet",always_connect=False) # 不直接传 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=5242880, async_mode="eventlet",always_connect=False)
|
|
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')) |