2017-10-22 203 views
0

我正在處理收聽龍捲風服務器的websocket客戶端。 一旦客戶端收到來自服務器的消息,客戶端就會默默退出。Websocket在收到龍捲風響應後不斷收聽

以下是我實施的代碼。

#!/usr/bin/python 

import tornado.websocket 
from tornado import gen 
import requests 

@gen.coroutine 
def test_ws(): 
    client = yield tornado.websocket.websocket_connect("ws://localhost:8888/subscribe/ports") 

msg = yield client.read_message() 
print(msg) 

if __name__ == "__main__": 
    loop = tornado.ioloop.IOLoop() 
    loop.run_sync(test_ws) 

客戶端正在運行,直到它收到來自服務器的第一條消息。但我想無限期地運行。

我錯過了什麼嗎?

回答

1

使用一個循環:

@gen.coroutine 
def test_ws(): 
    client = yield tornado.websocket.websocket_connect("ws://localhost:8888/subscribe/ports") 

    while True: 
     msg = yield client.read_message() 
     print(msg)