我正在使用Autobahn为WebSocket功能构建一个相当简单的应用程序。它与聊天服务器非常相似,但我需要做的一件事是了解如何实现如何在WebSocketServerFactory对象和我的Flask应用程序之间实质上共享资源。这里的例子是:
https://github.com/tavendo/AutobahnPython/tree/master/examples/twisted/websocket/echo_wsgi
展示了如何将Flask和Autobahn结合起来,但在我的特定用例中,我希望能够在Flask组件的授权调用触发时动态添加聊天室。关于如何在高速公路中的两个组件之间进行通信,是否有任何最佳实践?
答案 0 :(得分:3)
Flask基于WSGI,它是一种基本的阻止API。这与Twisted或asyncio(AutobahnPython支持的2个异步网络框架)不能很好地融合。
以下是两个选项:
callFromThread
从运行WSGI的后台线程与运行Autobahn的主线程进行通信