gitdeem commited on
Commit
03c5115
·
verified ·
1 Parent(s): bb6b524

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +22 -4
app.py CHANGED
@@ -128,9 +128,24 @@ class CombinedHandler(http.server.SimpleHTTPRequestHandler):
128
  websocket_server = serve(proxy_handler, "localhost", ws_port)
129
  loop.run_until_complete(websocket_server)
130
 
131
- # 创建到WebSocket服务器的连接
132
- ws_client = websockets.connect(f"ws://localhost:{ws_port}")
133
- asyncio.get_event_loop().run_until_complete(ws_client)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
 
135
  @staticmethod
136
  def find_free_port():
@@ -146,7 +161,8 @@ def run_server(port=PORT):
146
  print(f"HTTP 服务器运行在 http://{DOMAIN}:{port}")
147
 
148
  # 启动 WebSocket 服务器
149
- loop = asyncio.get_event_loop()
 
150
  ws_port = CombinedHandler.find_free_port()
151
  websocket_server = serve(proxy_handler, "localhost", ws_port)
152
  loop.run_until_complete(websocket_server)
@@ -159,6 +175,8 @@ def run_server(port=PORT):
159
  print("服务器正在关闭...")
160
  httpd.shutdown()
161
  loop.run_until_complete(websocket_server.close())
 
 
162
 
163
  if __name__ == "__main__":
164
  refresh_tokens = get_refresh_tokens()
 
128
  websocket_server = serve(proxy_handler, "localhost", ws_port)
129
  loop.run_until_complete(websocket_server)
130
 
131
+ # 创建新的事件循环
132
+ loop = asyncio.new_event_loop()
133
+ asyncio.set_event_loop(loop)
134
+
135
+ try:
136
+ # 创建到WebSocket服务器的连接
137
+ ws_client = loop.run_until_complete(websockets.connect(f"ws://localhost:{ws_port}"))
138
+
139
+ # 在这里处理WebSocket连接
140
+ # 例如:loop.run_until_complete(self.handle_websocket_communication(ws_client))
141
+
142
+ finally:
143
+ loop.close()
144
+
145
+ # 添加这个新方法来处理WebSocket通信
146
+ async def handle_websocket_communication(self, ws_client):
147
+ # 在这里实现WebSocket通信逻辑
148
+ pass
149
 
150
  @staticmethod
151
  def find_free_port():
 
161
  print(f"HTTP 服务器运行在 http://{DOMAIN}:{port}")
162
 
163
  # 启动 WebSocket 服务器
164
+ loop = asyncio.new_event_loop()
165
+ asyncio.set_event_loop(loop)
166
  ws_port = CombinedHandler.find_free_port()
167
  websocket_server = serve(proxy_handler, "localhost", ws_port)
168
  loop.run_until_complete(websocket_server)
 
175
  print("服务器正在关闭...")
176
  httpd.shutdown()
177
  loop.run_until_complete(websocket_server.close())
178
+ finally:
179
+ loop.close()
180
 
181
  if __name__ == "__main__":
182
  refresh_tokens = get_refresh_tokens()