【发布时间】:2021-12-27 07:24:31
【问题描述】:
我有一个调用多个 API 并在被调用时更新数据库的函数。我想安排函数在每天的特定时间运行。
已经尝试过flask_apscheduler 和APScheduler 会出现这个错误:
这通常意味着您尝试使用需要活动 HTTP 请求的功能。有关如何避免此问题的信息,请参阅测试文档。
这方面的任何线索都会有所帮助。
【问题讨论】:
标签: python api flask cron apscheduler
我有一个调用多个 API 并在被调用时更新数据库的函数。我想安排函数在每天的特定时间运行。
已经尝试过flask_apscheduler 和APScheduler 会出现这个错误:
这通常意味着您尝试使用需要活动 HTTP 请求的功能。有关如何避免此问题的信息,请参阅测试文档。
这方面的任何线索都会有所帮助。
【问题讨论】:
标签: python api flask cron apscheduler
你应该:
但是,这可能是上下文问题。我以前用 SQLAlchemy 遇到过类似的情况。
您需要以某种方式访问您的应用程序,方法是使用 app_context 或从 Flask 导入 current_app 并访问配置。
假设您导入了使用您的函数的应用程序,试试这个:
with app.app_context():
# call your function here
有关详细信息,请参阅此文档:Flask Documentation
您可以尝试的另一种方法是通过配置类对象传递您的应用配置。
您可以定义要安排的作业并在内部传递对函数的引用。
从 GitHub 上的 flask-apscheduler 存储库中查看此示例。
【讨论】: