Закрыть соединение websocket с js на python нужно много времени - PullRequest
0 голосов
/ 23 июня 2019

Я пытаюсь реализовать Python WebSocket, который отправляет строку в JS-клиент. Этот веб-сокет открывается клиентом и закрывается клиентом, но когда я закрываю соединение, веб-сокет продолжает отправлять данные в течение еще одной минуты. Почему?

код сервера python:

    Run = False

async def wsjson(websocket, path):

    data = datetime.datetime.now()

    sensors_data = []

    try:
        global Run
        while Run:               
                time.sleep(4)                         
                randomNumb = random.randint(1, 101)

                print(randomNumb)               
                await websocket.send(randomNumb)

    except websockets.ConnectionClosed:
        print("closed")     
        Run = False

start_server = websockets.serve(wsjson, '127.0.0.1', 5678)

asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()

и это код клиента js:


function aproConn() {
    ws = new WebSocket("ws://127.0.0.1:5678/");
}

function chiudoConn() {
    ws.close();

    ws.onclose = function(event) { 
        console.log("I have closed conn") //1 more minute to show this
      };

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...