Почему моя сеть ожидает закрытия сокета или соединения с веб-сокетом перед передачей данных - PullRequest
3 голосов
/ 17 июня 2020

У меня есть маршрутизатор, который представляет собой livebox play (оранжевый), как и любой другой маршрутизатор, как я думаю, но проблема в том, что мне нужно полностью закрыть соединение, прежде чем сервер сокета / веб-сокета что-то получит. Например, в веб-сокете мне нужно закрыть Chrome до того, как сервер получит.

Я задаю вопрос о том, как выполнить жесткое закрытие в веб-сокете, и они говорят мне, что моя сеть странно, поэтому, когда никто об этом не спрашивает, я задаю свой вопрос почему маршрутизатор позволяет передавать данные только после полностью закрытого соединения ?

веб-сокет python serveur

async def Time(websocket, path):
   a=await websocket.recv()
   print(a)
   await websocket.close()
   
    
start_server = websockets.serve(Time, "0.0.0.0", 5677)
loop=asyncio.get_event_loop()   

loop.run_until_complete(start_server)


loop.run_forever()

1 Ответ

0 голосов
/ 25 июня 2020

Я не специалист по python. Но я вижу проблему в функции asyn c, которая ждет, пока соединение websocket не закроется, чтобы напечатать сообщение. Просто удалите await websocket.close();

async def Time(websocket, path):
   a=await websocket.recv()
   print(a)
    
start_server = websockets.serve(Time, "0.0.0.0", 5677)
loop=asyncio.get_event_loop()   

loop.run_until_complete(start_server)


loop.run_forever()
...