WebSocketApp 与 create_connection

apo*_*sis 2 python websocket python-3.x

我想知道是否有人可以解释以下之间的区别:

ws = websocket.create_connection('wss://echo.websocket.org')
Run Code Online (Sandbox Code Playgroud)

ws = websocket.WebSocketApp('wss://echo.websocket.org')
Run Code Online (Sandbox Code Playgroud)

在 Python 包中websocket,因为文档不是很清楚。

Chr*_*unt 7

create_connection是一个工厂函数,默认情况下从class_关键字参数中提供的类生成一个 websocket 类websocket.WebSocket。此类提供低级接口,但可以直接用于只需要与 websocket 命令交互的代码 - 发送消息,等待响应,发送下一条消息 - 等等。

WebSocketApp是一个WebSocket提供更多“事件驱动”接口的包装器。您向构造函数提供回调(或在初始化后通过分配给相关成员),然后调用run_foreverwhich 块,直到连接关闭。当消息到来时,它会WebSocketApp调用您的回调函数。这可以驱动您的整个应用程序,或者您可以调用run_forever不同的线程并同时执行其他工作(例如根据计时器定期更新游戏状态,而不是仅在收到消息时)。