与 Flask 交互的其他应用程序
Other apps interfacing with Flask
标题可能有误,但希望能更好地解释一下。我有一个为网站提供服务的 Flask 应用程序。我有另一个基于训练模型识别手势的应用程序。我怎样才能让手势触发烧瓶应用程序中的事件,例如浏览到网站上的另一个页面。
我在考虑使用 flask-socketio 创建一个 websocket,两个应用程序可以通过它进行通信...我也在考虑 运行 手势应用程序作为 flask 应用程序中的线程,并且还使用 websocket ... 对此的任何帮助将不胜感激。
我经常想知道如何让其他 apps/threads 与 Flask 交互,所以也很好奇人们做了什么来实现这一点。
第一个解决方案:
如果两者都是 Flask 应用程序或只是 Web 应用程序,那么您可以按照说明 here 只使用 Requests 库。
这是最简单的方法。
可能的设置示例:
- 第一个应用正在本地主机上侦听:5000
- 第二个应用程序正在侦听本地主机:5001
第一个应用程序完成了一项工作,然后执行以下行:
r = requests.get('http://localhost:5001/finished_job')
在您的第二个应用中:
@application.route("/finished_job", methods=["GET"])
def finished_job():
"""Do what you have to do."""
它被称为 REST API。应用程序通过 HTTP 请求进行通信。那是你可以做的更容易。
第二个解决方案:
使用 Queue 在进程之间进行通信,如解释的那样 here
第三个解决方案:
将结果写入文件并在 Flask 应用程序中读取该文件。
第四解:
在您的 Flask 应用程序中导入您的第一个应用程序。并把它 运行 变成一个线程。或者只在需要时调用它。
标题可能有误,但希望能更好地解释一下。我有一个为网站提供服务的 Flask 应用程序。我有另一个基于训练模型识别手势的应用程序。我怎样才能让手势触发烧瓶应用程序中的事件,例如浏览到网站上的另一个页面。 我在考虑使用 flask-socketio 创建一个 websocket,两个应用程序可以通过它进行通信...我也在考虑 运行 手势应用程序作为 flask 应用程序中的线程,并且还使用 websocket ... 对此的任何帮助将不胜感激。 我经常想知道如何让其他 apps/threads 与 Flask 交互,所以也很好奇人们做了什么来实现这一点。
第一个解决方案:
如果两者都是 Flask 应用程序或只是 Web 应用程序,那么您可以按照说明 here 只使用 Requests 库。 这是最简单的方法。
可能的设置示例:
- 第一个应用正在本地主机上侦听:5000
- 第二个应用程序正在侦听本地主机:5001
第一个应用程序完成了一项工作,然后执行以下行:
r = requests.get('http://localhost:5001/finished_job')
在您的第二个应用中:
@application.route("/finished_job", methods=["GET"])
def finished_job():
"""Do what you have to do."""
它被称为 REST API。应用程序通过 HTTP 请求进行通信。那是你可以做的更容易。
第二个解决方案: 使用 Queue 在进程之间进行通信,如解释的那样 here
第三个解决方案: 将结果写入文件并在 Flask 应用程序中读取该文件。
第四解: 在您的 Flask 应用程序中导入您的第一个应用程序。并把它 运行 变成一个线程。或者只在需要时调用它。