【问题标题】:flask API calls scheduling with cron jobs使用 cron 作业进行烧瓶 API 调用调度
【发布时间】:2021-12-27 07:24:31
【问题描述】:

我有一个调用多个 API 并在被调用时更新数据库的函数。我想安排函数在每天的特定时间运行。

已经尝试过flask_apscheduler 和APScheduler 会出现这个错误:

这通常意味着您尝试使用需要活动 HTTP 请求的功能。有关如何避免此问题的信息,请参阅测试文档。

这方面的任何线索都会有所帮助。

【问题讨论】:

    标签: python api flask cron apscheduler


    【解决方案1】:

    你应该:

    • 在您定义烧瓶应用程序的位置发布代码。
    • 指定您尝试访问该应用的方式。
    • 如何调用 API。
    • 这些 API 是第 3 方还是您的蓝图的一部分。

    但是,这可能是上下文问题。我以前用 SQLAlchemy 遇到过类似的情况。 您需要以某种方式访问​​您的应用程序,方法是使用 app_context 或从 Flask 导入 current_app 并访问配置。

    1. 假设您导入了使用您的函数的应用程序,试试这个:

      with app.app_context():
          # call your function here
      

      有关详细信息,请参阅此文档:Flask Documentation

    2. 您可以尝试的另一种方法是通过配置类对象传递您的应用配置。
      您可以定义要安排的作业并在内部传递对函数的引用。
      从 GitHub 上的 flask-apscheduler 存储库中查看此示例。

    【讨论】:

      猜你喜欢
      • 2019-09-28
      • 1970-01-01
      • 2013-02-01
      • 1970-01-01
      • 2020-04-27
      • 1970-01-01
      • 2016-05-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多