Другие приложения, взаимодействующие с Flask - PullRequest
1 голос
/ 24 апреля 2019

Название может быть неправильным, но в надежде объяснить это (немного) лучше. У меня есть приложение Flask, обслуживающее веб-сайт. У меня есть другое приложение, которое распознает жесты на основе обученной модели. Как сделать так, чтобы жесты рук вызывали событие в приложении фляги, например, переход на другую страницу на веб-сайте. Я думал об использовании колбы-сокета для создания веб-сокета, через который эти два приложения могли обмениваться данными ... Я также думал о том, чтобы запустить приложение для жестов рук как поток в приложении фляги и также использовать веб-сокет ... Любая помощь по это будет высоко ценится. Я часто задавался вопросом, как заставить другие приложения / потоки взаимодействовать с колбой, а также любопытно, что люди сделали для этого.

1 Ответ

1 голос
/ 24 апреля 2019

1-й раствор :

Если оба являются приложением Flask или просто веб-приложением, вы можете просто использовать библиотеку запросов, как описано здесь . Это самый простой способ.

Пример возможной настройки:

  • 1-е приложение прослушивает localhost: 5000
  • 2-е приложение прослушивает localhost: 5001

1-е приложение завершило работу, затем оно выполняет следующую строку:

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-запросы. Это легче сделать.

2-е решение: Связь между процессами, использующими Очередь, как объяснено здесь

3-е решение: Запись результатов в файл и чтение файла в приложении Flask.

4-е решение: Импортируйте свое первое приложение в приложение фляги. И заставьте это натолкнуться на поток. Или звоните только тогда, когда вам нужно.

...