python - 将 Flask 应用程序连接到 Websocket 服务器
问题描述
无法将 Flask 应用程序作为 websocket 客户端连接到另一个 websocket 服务器。
我试图环顾如何实现这一点,但我发现的唯一解决方案是连接是短暂的一次性发送接收。
因此,当我建立长期连接时,Flask 应用程序不再运行。我猜这个问题,是因为他们都在“永远”运行。
因此,如果先运行以下代码,flask 应用程序将不会运行,如果我执行相反的操作,则不会建立 websocket 连接。
websocket.enableTrace(True)
ws = websocket.WebSocketApp(config["WS_URI"],
on_message = on_message,
on_error = on_error,
on_close = on_close)
ws.on_open = on_open
ws.run_forever()
一个示例 Flask 应用程序:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def index():
return "index"
解决方案
我找到的解决方案是在不同的进程上运行它们。我写了一个小帖子解释细节。
推荐阅读
- .net - 等待与 .GetAwaiter.GetResult() - .Net GraphServiceClient
- r - 正则表达式提取“specificWord”行上的数字
- php - Laravel 8 错误供应商/symfony/polyfill-mbstring/Mbstring.php
- typescript - 在打字稿中获取错误的字符串表示的规范方法是什么
- c++ - 使用 real() 和 imag() 为复杂变量赋值的问题
- javascript - 滚动时导航栏不改变背景颜色
- python - 如何在python的xml文件中访问子Childs?
- javascript - 我正在尝试制作一个显示位置的移动网络应用程序,但它不起作用?
- javascript - 折扣反应 js
- haskell - 使用 Haskell 进行 Web 抓取循环