python websocket 客户端连接状态 - 如何更新以便获得正确的状态?

python websocket client connected status - how to update so I get correct status?

我可以连接到 node.js websocket server using python websocket。当我询问 python websocket 客户端是否连接到服务器时,它是不准确的。

事情是这样的:

Python 2.7.6 (default, Sep  9 2014, 15:04:36)
>>> import websocket
>>> ws = websocket.WebSocket()
>>> ws.connect("ws://localhost:8081") # my websocket server is running, so all good here.
>>> ws.connected
True      # This is correct. Now I kill the websocker server
>>> ws.connected
True      # this should be false since the server is dead.

ws node.js 模块自带 wscat 并且你可以通过命令 wscat -l 8081.

运行 一个 websocket 服务器

如何获得指示真实 connected/disconnected 状态的准确状态?

.connected 属性不会更新,除非 closeshutdown、...调用,或 recv* 收到空数据。

尝试调用 recv(),然后检查 .connected 属性。